/** Shopify CDN: Minification failed

Line 2133:0 Unexpected "}"

**/
/* Nurture phone styles, merged from nh-mobile-bleed, nh-mobile-extra and nh-mobile-extra-2 (Nov 7 2026 cleanup).
   Page- and product-specific blocks stay inline in snippets/nh-phone.liquid. Edit here, not in the old snippets (removed). */
.nh-row__i,.nh-row__t{display:none}.nh-specs-q{display:none}.nh-m-only,.nh-warn-ic{display:none}.nh-meter{display:none}.nh-pct__bar{display:none}.nh-lc__i{display:none}.nh-wl-count,.nh-wl-empty{display:none}.nh-pol-eyebrow,.nh-pol-nav,.nh-pol-jump,.nh-pol-ship{display:none}
@media (max-width:767px){#main .nh-nob-t{border-top-color:transparent!important}#main .nh-nob-b{border-bottom-color:transparent!important}}
/* Program pages (Rewards, Affiliate) on phones (Carrie, Nov 3): the headline numbers stack as tidy rows (big number on the
   left, label and text on the right), and the "how it works" steps become a numbered timeline. */
@media (max-width:767px){
  #main .sct.pg .pg-stats{grid-template-columns:minmax(0,1fr);gap:10px}
  #main .sct.pg .pg-stat{display:grid;grid-template-columns:96px minmax(0,1fr);grid-template-areas:"val lbl" "val txt";column-gap:14px;row-gap:2px;align-items:center;text-align:left;padding:12px 16px}
  #main .sct.pg .pg-stat small{grid-area:lbl;align-self:end}
  #main .sct.pg .pg-stat strong{grid-area:val;margin:0;font-size:36px;text-align:center}
  #main .sct.pg .pg-stat span{grid-area:txt;align-self:start;font-size:15px}
  /* Steps as a timeline (Carrie, Nov 3): solid green numbered circles on the left joined by a thin green line, text beside them. */
html body #main .sct.pg .pg-steps{gap:0}
html body #main .sct.pg .pg-step{position:relative;margin:0;border:0;border-radius:0;box-shadow:none;background:transparent;padding:0 0 28px 54px;text-align:left}
html body #main .sct.pg .pg-step:last-child{padding-bottom:0}
html body #main .sct.pg .pg-step .pg-step__icon{display:none}
html body #main .sct.pg .pg-step > :is(h3,.h4){margin-top:6px}
html body #main .sct.pg .pg-step::after{left:0;right:auto;top:0;width:38px;height:38px;border-radius:50%;background:#3b755f;color:#fff;font-size:19px;line-height:38px;text-align:center}
html body #main .sct.pg .pg-step:not(:last-child)::before{content:"";position:absolute;left:18px;top:42px;bottom:4px;width:2px;background:rgba(59,117,95,.35)}
  /* FAQ (Carrie, Nov 3): one pale green band edge to edge, each question a white rounded row; the open one gets a thin green outline. */
html body #main .sct.pg .pg-faq{gap:10px;margin:0 calc(-1 * var(--container-gutter, 20px));padding:20px var(--container-gutter, 20px);background:#f3f7f5}
html body #main .sct.pg .pg-q{margin:0 !important;width:auto !important;max-width:none !important;border:0 !important;border-radius:10px !important;box-shadow:none !important;padding:16px !important;background:#fff !important}
html body #main .sct.pg .pg-q.is-open{box-shadow:inset 0 0 0 1.5px #3b755f !important}
  /* Program FAQ on phones: tap a question to open its answer (+ / -), so all questions fit on a screen or two.
     The answers stay in the page (hidden until tapped), so search engines still read them. */
html body #main .pg-faq.nh-acc .nh-acc-btn{all:unset;box-sizing:border-box;display:block;width:100%;position:relative;padding-right:36px;cursor:pointer;-webkit-tap-highlight-color:transparent}
html body #main .pg-faq.nh-acc .nh-acc-btn:focus-visible{outline:2px solid #3b755f;outline-offset:4px}
html body #main .pg-faq.nh-acc .nh-acc-btn::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);font:700 26px/1 'Roboto Condensed',sans-serif;color:#3b755f}
html body #main .pg-faq.nh-acc .pg-q.is-open .nh-acc-btn::after{content:"\2212"}
html body #main .pg-faq.nh-acc .pg-q > h3{margin:0}
html body #main .pg-faq.nh-acc .pg-q:not(.is-open) > .prose{display:none}
html body #main .pg-faq.nh-acc .pg-q > .prose{margin-top:10px}
  /* FAQ pages (fragrance oil, mica, lye safety, bath bomb colorant) on phones (Carrie, Nov 3): same look as the Rewards FAQ.
     The questions sit on one pale green band, each a white rounded row; tap to open (+ / -). While searching, every match
     shows its answer. The answers stay in the page for search engines. */
html body #main .nfq-cards{display:grid;gap:10px;margin:0 calc(-1 * var(--container-gutter, 20px));padding:20px var(--container-gutter, 20px);background:#f3f7f5}
html body #main .nfq-cards > .nfq-card{margin:0 !important;width:auto !important;max-width:none !important;border:0 !important;border-radius:10px !important;box-shadow:none !important;padding:16px !important;background:#fff !important}
html body #main .nfq-cards.nh-acc .nfq-q{position:relative;padding-right:30px;cursor:pointer;align-items:center;-webkit-tap-highlight-color:transparent}
html body #main .nfq-cards.nh-acc .nfq-q:focus-visible{outline:2px solid #3b755f;outline-offset:4px;border-radius:6px}
html body #main .nfq-cards.nh-acc .nfq-q::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);font:700 26px/1 'Roboto Condensed',sans-serif;color:#3b755f}
html body #main .nfq-cards.nh-acc .nfq-card.is-open .nfq-q::after{content:"\2212"}
html body #main .nfq-cards.nh-acc .nfq-card.is-open{box-shadow:inset 0 0 0 1.5px #3b755f !important}
html body #main .nfq-cards.nh-acc:not(.is-searching) .nfq-card:not(.is-open) .nfq-a{display:none}
html body #main .nfq-cards.nh-acc .nfq-q{margin-bottom:0}
html body #main .nfq-cards.nh-acc .nfq-a{margin-top:12px}
html body #main .nfq-cards.nh-acc.is-searching .nfq-q::after{display:none}
html body #main .nfq-cards.nh-acc.is-searching .nfq-card{box-shadow:none !important}
html body #main .nfq-cards.nh-acc.is-searching .nfq-q{padding-right:0;cursor:default}
  /* Collection page FAQ (collection accordions) on phones (Carrie, Nov 3): same look as the other FAQs. Pale green band,
     white rounded rows, Antonio titles, green + / -, and the open question gets a thin green outline. No gray lines. */
html body #main .shopify-section--collection-accordions .accordion-box{display:grid;gap:10px;margin:0 calc(-1 * var(--container-gutter, 20px)) !important;padding:20px var(--container-gutter, 20px) !important;border:0 !important;border-radius:0 !important;box-shadow:none !important;background:#f3f7f5 !important}
html body #main .shopify-section--collection-accordions .accordion-box > details{border:0 !important;margin:0 !important;background:#fff;border-radius:10px;padding:0 16px}
html body #main .shopify-section--collection-accordions .accordion-box > details[open]{box-shadow:inset 0 0 0 1.5px #3b755f}
html body #main .shopify-section--collection-accordions .accordion-box .accordion__toggle{padding:16px 0;gap:12px;align-items:center;font-family:'Antonio','Anton',sans-serif;font-weight:700;font-size:20px;line-height:1.2;letter-spacing:.01em}
html body #main .shopify-section--collection-accordions .accordion-box .circle-chevron{display:none}
html body #main .shopify-section--collection-accordions .accordion-box .accordion__toggle::after{content:"+";flex:none;font:700 26px/1 'Roboto Condensed',sans-serif;color:#3b755f}
html body #main .shopify-section--collection-accordions .accordion-box details[open] .accordion__toggle::after{content:"\2212"}
html body #main .shopify-section--collection-accordions .accordion-box .accordion__content{padding:0 0 16px 0}
  /* Same 24px margin inside sections too (Carrie, Nov 3): between the product grid and the page numbers on collection pages,
     and between a section's intro (heading, text, button) and its main content, like "See the full FAQ" and the FAQ band. */
html body #main .collection{row-gap:24px}
html body #main .section-stack{row-gap:24px}
  /* Collection page numbers on phones: slightly smaller round buttons (44px, still easy to tap) so the next arrow fits on the
     same row as the numbers instead of wrapping onto its own line. */
html body #main .pagination :is(.pagination__item,.pagination__page){width:44px;min-width:44px;height:44px;padding:0}
html body #main .collection__pagination{column-gap:4px}
  /* Page numbers on one line (Carrie, Nov 3): when they would wrap, keep only the arrows, page 1, the current page and the last page */
html body #main .pagination{column-gap:4px !important}
html body #main .pagination .nh-pg-hide{display:none !important}
  /* FAQ questions on phones (Carrie, Nov 3): Roboto Condensed, bold, normal capitalization. It reads calmer than Antonio for
     long questions. Section headings keep Antonio/Anton. */
html body #main :is(.pg-faq .pg-q > h3, .pg-faq .pg-q .nh-acc-btn, .nfq-cards .nfq-q h2, .shopify-section--collection-accordions .accordion-box .accordion__toggle){font-family:'Roboto Condensed',sans-serif !important;font-weight:700 !important;font-size:17px !important;line-height:1.3 !important;letter-spacing:0 !important;text-transform:none !important}
  /* Collection finder scent families on phones (Carrie, Nov 3): no colored tints or white gaps. Each family sits on white with
     one thin gray line between families. The colored icon and dots keep each family's color. */
html body #main .cf-moods{gap:0}
html body #main .cf-mood{background:transparent !important;border:0 !important;border-radius:0 !important;box-shadow:none !important;margin:0 !important;padding:16px 0 !important}
html body #main .cf-mood + .cf-mood{border-top:1px solid rgba(68,68,68,.14) !important}
html body #main .cf-mood:first-child{padding-top:4px !important}
  /* Product pages on phones (Carrie, Nov 3). */
  /* Sizes: an even 3-across grid instead of wrapping with one size alone on the last line. */
html body #main .variant-picker__option-values:has(> .block-swatch){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
html body #main .variant-picker__option-values > .block-swatch{width:auto;min-width:0;justify-content:center;text-align:center;padding-left:6px !important;padding-right:6px !important;white-space:nowrap}
  /* "Ingredient notes: ..." uses the site's text-link style: green, bold, underlined. */
html body #main .ps-badge-note{color:#3b755f !important;font-weight:700 !important;text-decoration:underline !important;text-underline-offset:2px}
  /* "Tested in cold process soap" (Carrie, Nov 3): same look as "Blends well with": a full-width pale green band with stacked
     white rectangles, one per result. No colored bars. Name on the left, result and note on the right; the result word carries the color (amber = take care,
     green = good). */
html body #main .nh-cp{margin:0 calc(-1 * var(--container-gutter, 20px));padding:16px var(--container-gutter, 20px);background:#f3f7f5}
html body #main .nh-cp__tiles{grid-template-columns:minmax(0,1fr) !important;gap:8px;margin:0;padding:0;background:transparent;border:0}
html body #main .nh-cp__tiles > .nh-cp__tile{width:auto !important;aspect-ratio:auto !important;background:#fff !important;border:1px solid rgba(0,0,0,.08) !important;border-radius:8px !important;box-shadow:none !important;padding:10px 14px !important;grid-template-columns:120px minmax(0,1fr) !important;column-gap:12px;align-items:center}
html body #main .nh-cp__tiles > .nh-cp__tile .nh-cp__n{grid-column:2}
  /* Mini meters (Carrie, Nov 3): three dots after each result show how much at a glance. Amber for things to watch
     (acceleration, discoloration), green for good (scent retention). The words stay for screen readers. */
html body #main .nh-cp__tile .nh-cp__v{display:flex;align-items:center;gap:6px}
html body #main .nh-cp__tile .nh-meter{display:inline-flex;gap:4px;margin-left:auto;padding-left:8px}
html body #main .nh-cp__tile .nh-meter i{width:10px;height:10px;border-radius:50%;background:#e1e6e3;display:block}
html body #main .nh-cp__tile.is-warn .nh-meter i.on{background:#d9a441}
html body #main .nh-cp__tile.is-good .nh-meter i.on{background:#3b755f}
html body #main .nh-cp__tile:not(.is-warn):not(.is-good) .nh-meter i.on{background:#888}
html body #main .nh-cp__tile.is-warn .nh-cp__v{color:#a86f0c}
html body #main .nh-cp__tile.is-good .nh-cp__v{color:#3b755f}
  /* "Why Nurture?": a full-width pale green row with a green + / -, like the FAQ questions. */
  /* Similar colors / Pairs well with / Matching scents (Carrie, Nov 3). The tabs are one full-width white bar with equal parts
     that always fit on one line, even on a 360px phone. The color swatches are white cards in an even 4-across grid, like the
     blend cards. */
html body #main .cp .cp__tabs{display:grid !important;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:4px;margin-left:calc(-1 * var(--container-gutter, 20px)) !important;margin-right:calc(-1 * var(--container-gutter, 20px)) !important;padding:6px 8px;background:#fff;border:0;border-top:1px solid rgba(0,0,0,.06);border-bottom:1px solid rgba(0,0,0,.06);border-radius:0;flex-wrap:nowrap;margin-top:0 !important;margin-bottom:14px !important}
html body #main .cp.nh-bleed:has(> .cp__tabs:first-child), html body #main .cp.nh-bleed:has(.cp__tabs){padding-top:0 !important}
html body #main .cp .cp__tab{min-width:0;width:100%;justify-content:center;text-align:center;white-space:nowrap;padding:0 6px !important;font-size:14px}
  /* Color cards (Similar colors, Pairs well with, Matching colors): two columns, matching the scent cards (Carrie, Nov 4). */
html body #main .cp .cp__list{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:8px !important}
html body #main .cp .cp__list > .cp__item{min-width:0;width:auto}
html body #main .cp .cp__list .cp__link{display:flex !important;flex-direction:row !important;align-items:center !important;justify-content:flex-start !important;gap:10px !important;width:auto;height:100%;min-height:44px;box-sizing:border-box;padding:8px 10px !important;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:8px;text-align:left !important}
html body #main .cp .cp__list .cp__sw{width:28px !important;height:28px !important;flex:none !important;border-radius:50% !important;margin:0 !important}
html body #main .cp .cp__list .cp__name{width:auto;font-size:13px !important;font-weight:600 !important;line-height:1.25;text-align:left !important;color:#444}
html body #main .cp.nh-bleed{background:#f3f7f5 !important;border-top:0 !important;border-bottom:0 !important}
  /* "Why Nurture?" (Carrie, Nov 3): joined onto the "Blends well with" band as one more white card at its bottom, so the two
     read as one area. Tap to open (+ / -); the answer opens inside the same card. */
html body #main .product-info__block-item:has(.cp) + .product-info__block-item:has(details.wn){margin-top:0 !important}
  /* When "Why Nurture?" follows the rewards box (kits and other pages without suggestion tabs), the rewards box drops its bottom
     line and the green band starts 24px under the rewards text (Carrie, Nov 3: the space under "Sign in or join" was too big). */
html body #main .product-info__block-item:has(~ .product-info__block-item details.wn) section[class^="slp_"]{border-bottom-color:transparent !important}
html body #main .product-info__block-item:has(~ .product-info__block-item details.wn) section[class^="slp_"] > div{padding-bottom:0 !important}
html body #main .product-info__block-item:has(.cp):has(+ .product-info__block-item details.wn){margin-bottom:0 !important}
  /* The green band is the whole "Why Nurture?" block, so a maker's note above it (color pages) sits on the band too,
     as a white card like the others, instead of a white gap with a gray line. */
html body #main .product-info__liquid:has(> details.wn){margin:0 calc(-1 * var(--container-gutter, 20px));padding:0 var(--container-gutter, 20px) 16px;background:#f3f7f5}
html body #main .product-info__block-item:not(:has(.cp)) + .product-info__block-item .product-info__liquid:has(> details.wn),
html body #main .product-info__block-item:first-child .product-info__liquid:has(> details.wn){padding-top:16px}
html body #main .product-info__liquid:has(> details.wn) > #maker-note{margin:0 0 8px !important;padding:12px 14px !important;background:#fff;border:1px solid rgba(0,0,0,.08) !important;border-radius:8px}
html body #main details.wn{margin:0;padding:0;border:0 !important;border-radius:0 !important;background:transparent !important;box-shadow:none !important}
html body #main details.wn > .wn__sum{padding:12px 14px !important;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:8px;font-family:'Roboto Condensed',sans-serif;font-weight:700;font-size:16px;align-items:center;justify-content:space-between}
html body #main details.wn[open] > .wn__sum{border-radius:8px 8px 0 0;border-bottom:0}
html body #main details.wn .wn__chev{display:none}
html body #main details.wn > .wn__sum::after{content:"+";font:700 24px/1 'Roboto Condensed',sans-serif;color:#3b755f}
html body #main details.wn[open] > .wn__sum::after{content:"\2212"}
html body #main details.wn > .wn__body{padding:4px 14px 14px !important;background:#fff;border:1px solid rgba(0,0,0,.08);border-top:0;border-radius:0 0 8px 8px}
html body #main .cp.nh-bleed:has(+ *){padding-bottom:12px !important}
  /* Reviews: the first 3 show; "Show more" reveals the rest of the page, then loads more as before. */
html body #main .jm-review-widget:not(.nh-rv-all):has(.jm-load-more-pagination) #jdgm-tabpanel_product_reviews .jdgm-review-list > :nth-child(n+4){display:none}
  /* Reviews "Show more" uses the site's button style: solid green, 6px corners, bold Roboto Condensed. */
html body #main .jm-review-widget .jm-load-more-pagination :is(button,a){background:#3b755f !important;color:#fff !important;border:0 !important;border-radius:6px !important;font-family:'Roboto Condensed',sans-serif !important;font-weight:700 !important;font-size:16px !important;padding:12px 24px !important;min-height:44px}
  /* Footer "Free help and tools" on phones (Carrie, Nov 3): the page's normal 20px side margin (it had 36px), and the four
     tool cards are full-width rows (icon on the left, name and line on the right) instead of squeezed squares. */
html body .nh-help{padding-left:0 !important;padding-right:0 !important}
html body .nh-help .nh-help__grid{grid-template-columns:minmax(0,1fr) !important;gap:10px !important}
html body .nh-help .nh-help__card{display:grid !important;grid-template-columns:48px minmax(0,1fr);grid-template-areas:"i l" "i t";column-gap:14px;row-gap:2px;align-items:center;text-align:left !important;padding:14px 16px !important;min-height:0 !important}
html body .nh-help .nh-help__icon{grid-area:i;width:48px !important;height:48px !important;margin:0 !important}
html body .nh-help .nh-help__label{grid-area:l;align-self:end;margin:0 !important;font-size:19px !important;line-height:1.1}
html body .nh-help .nh-help__text{grid-area:t;align-self:start;margin:0 !important;font-size:15px;line-height:1.35}
  /* About us: the "since 2004" panel runs edge to edge. "How we work" sits on one pale green band with white rounded rows
     (same look as the Rewards FAQ). The standards list stays as tappable cards. */
html body #main .ab-since{margin-inline:calc(-1 * var(--container-gutter, 20px));border-radius:0;padding-inline:var(--container-gutter, 20px)}
html body #main .ab-values{gap:10px;margin:0 calc(-1 * var(--container-gutter, 20px));padding:20px var(--container-gutter, 20px);background:#f3f7f5}
html body #main .ab-value{margin:0 !important;width:auto !important;max-width:none !important;border:0 !important;border-radius:10px !important;box-shadow:none !important;background:#fff !important;padding:18px 16px !important}
  /* Troubleshooting articles: the "what you see / why" lists sit on one pale green band with white rounded rows, and the
     numbered steps are a timeline (green numbered circles joined by a thin green line), like the Rewards page.
     Product suggestion cards stay as cards. */
html body #main .sct .sct-body .sct-diag{gap:10px;margin:0 calc(-1 * var(--container-gutter, 20px));padding:20px var(--container-gutter, 20px);background:#f3f7f5}
html body #main .sct .sct-body .sct-diag > li{margin:0 !important;width:auto !important;max-width:none !important;border:0 !important;border-radius:10px !important;box-shadow:none !important;background:#fff !important;padding:14px 16px !important}
html body #main .sct .sct-body .sct-steps{gap:0}
html body #main .sct .sct-body .sct-steps > li{position:relative;margin:0;border:0;border-radius:0;box-shadow:none;background:transparent;padding:4px 0 24px 50px}
html body #main .sct .sct-body .sct-steps > li:last-child{padding-bottom:4px}
html body #main .sct .sct-body .sct-steps > li::before{left:0;top:0}
html body #main .sct .sct-body .sct-steps > li:not(:last-child)::after{content:"";position:absolute;left:16px;top:38px;bottom:4px;width:2px;background:rgba(59,117,95,.35)}
  /* Collections: "Filter and sort" is a full-width bar pinned flush to the bottom edge (was a pill floating 32px up that faded away at the top of the page and near the footer); it now stays on screen the whole time */
html body facet-floating-filter.facets__floating-filter{bottom:0 !important;left:0 !important;right:0 !important;width:100% !important;margin:0 !important;padding:0 0 env(safe-area-inset-bottom) !important;background:rgb(68,68,68);box-shadow:0 -2px 8px rgba(0,0,0,.12);opacity:1 !important;visibility:visible !important;transform:none !important}
html body facet-floating-filter.facets__floating-filter > .button{width:100% !important;border-radius:0 !important;margin:0 !important}
  /* A note above "Why Nurture?" (like the Lye Calculator line on lye) is a white card in the band, 8px above it (Carrie, Nov 3) */
html body #main .product-info__liquid:has(> details.wn) > div:not(.wn){margin:0 0 8px !important;padding:12px 14px !important;background:#fff !important;border:1px solid rgba(0,0,0,.08) !important;border-radius:8px !important;font-size:15px}
html body #main .product-info__liquid:has(> details.wn) > div:not(.wn) a{color:#3b755f !important;font-weight:700 !important;text-decoration:underline !important;text-underline-offset:2px}
  /* Lye page and similar (Carrie, Nov 3: "get creative") */
  /* Two sizes: two equal buttons across the full width */
html body #main .variant-picker__option-values:has(> label.block-swatch:nth-of-type(2)):not(:has(> label.block-swatch:nth-of-type(3))){grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  /* Warning box: stays amber. "Restricted Shipping" is a white card; "By purchasing..." is a white checklist with amber check marks */
html body #main .fd-card--warn .fd-rich > p:first-child{background:#fff;border:1px solid rgba(0,0,0,.08);border-bottom:0;border-radius:8px 8px 0 0;padding:12px 14px 2px;margin:0 !important}
html body #main .fd-card--warn .fd-rich > p:first-child + p{background:#fff;border:1px solid rgba(0,0,0,.08);border-top:0;border-radius:0 0 8px 8px;padding:4px 14px 12px;margin:0 0 16px !important}
html body #main .fd-card--warn .fd-rich > p:first-child + p + p{margin:0 0 8px !important}
html body #main .fd-card--warn .fd-rich ul{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:8px;padding:6px 14px !important;margin:0 !important;list-style:none !important}
html body #main .fd-card--warn .fd-rich li{position:relative;padding:8px 0 8px 32px !important;margin:0 !important;border-top:0 !important;line-height:1.4} /* no divider lines (Carrie, Nov 4) */
html body #main .fd-card--warn .fd-rich li:first-child{border-top:0}
html body #main .fd-card--warn .fd-rich li::before{content:"";position:absolute;left:0;top:8px;width:20px;height:20px;border-radius:50%;background:#a86f0c url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/12px no-repeat}
  /* Plain lists in the Overview text (like "Mixing soap making lye safely") get small green dots */
html body #main .sct.fd .fd-prose ul{list-style:none !important;padding:0 !important;margin:0 0 12px !important}
html body #main .sct.fd .fd-prose ul > li{position:relative;padding-left:20px !important;margin:0 0 6px !important}
html body #main .sct.fd .fd-prose ul > li::before{content:"";position:absolute;left:2px;top:.62em;width:8px;height:8px;border-radius:50%;background:#3b755f}
  /* Oil blend and similar (Carrie, Nov 3): a list of percentages that adds up to 100 becomes a white card with one row
     per ingredient, the percentage on the right and a thin green bar sized to it. "About our blend" paragraphs are white
     cards on the pale green band. */
html body #main .sct.fd .fd-prose ul.nh-pct{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:8px;padding:6px 14px !important;margin:4px 0 16px !important}
html body #main .sct.fd .fd-prose ul.nh-pct > li{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;row-gap:6px;align-items:baseline;padding:8px 0 !important;margin:0 !important;border-top:0 !important} /* no divider lines (Carrie, Nov 4) */
html body #main .sct.fd .fd-prose ul.nh-pct > li:first-child{border-top:0}
html body #main .sct.fd .fd-prose ul.nh-pct > li::before{display:none}
html body #main .nh-pct__v{font-weight:700;color:#3b755f}
html body #main .nh-pct__bar{grid-column:1 / -1;display:block;height:6px;border-radius:3px;background:#eff5f1;overflow:hidden}
html body #main .nh-pct__bar i{display:block;height:100%;background:#3b755f;border-radius:3px}
html body #main .fd-card--soft .fd-rich p{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:8px;padding:12px 14px;margin:0 0 8px !important}
html body #main .fd-card--soft .fd-rich p:last-child{margin-bottom:0 !important}
  /* "Ingredients: ..." line in the Overview (soap bases and others): a pale green band with a small green label and the
     list in a white card, like Use rate on color pages (Carrie, Nov 3). */
html body #main .sct.fd .fd-prose p.nh-ingr{margin:16px calc(-1 * var(--container-gutter, 20px)) 0 !important;padding:16px var(--container-gutter, 20px) !important;background:#f3f7f5}
html body #main .nh-ingr__h{display:block;font-family:'Antonio','Anton',sans-serif;font-weight:700;font-size:16px;letter-spacing:.03em;text-transform:uppercase;color:#3b755f;margin:0 0 8px}
html body #main .nh-ingr__c{display:none}
html body #main .nh-ingr__t{display:block;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:8px;padding:12px 14px;font-size:15px;line-height:1.55}
  /* Spec boxes written as "Label: value" lines (soap cutters and similar): pale green band with white rows, label left,
     value right, like Size and capacity on molds. A bold line on its own ("Cutter Dimensions") becomes a small heading. */
html body #main .fd-card.nh-kv-card{background:#f3f7f5 !important;border-top:0 !important;border-bottom:0 !important;padding-top:16px !important;padding-bottom:16px !important}
html body #main .nh-kv-card .fd-rich ul{list-style:none !important;padding:0 !important;margin:0 0 8px !important}
html body #main .nh-kv-card .fd-rich .nh-kv{display:grid;grid-template-columns:96px minmax(0,1fr);column-gap:12px;align-items:center;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:8px;padding:10px 14px !important;margin:0 0 8px !important;font-size:15px;line-height:1.4}
html body #main .nh-kv-card .fd-rich .nh-kv:last-child{margin-bottom:0 !important}
html body #main .nh-kv-card .fd-rich .nh-kv > strong{font-weight:700;color:#2b2b2b}
html body #main .nh-kv__c{display:none}
html body #main .nh-kv-card .fd-rich .nh-kv-h{font:700 15px/1.3 'Roboto Condensed',sans-serif;color:#2b2b2b;margin:4px 0 8px !important}
  /* A paragraph that is just one link (e.g. "Download … Instructions", "Buy Replacement Wires Here") becomes a white tap card
     with an icon and an arrow, like the Lye calculator card. */
html body #main .sct.fd .fd-prose p.nh-linkcard{margin:0 0 8px !important}
html body #main .sct.fd .fd-prose p.nh-linkcard > a{display:grid !important;grid-template-columns:40px minmax(0,1fr) 12px;align-items:center;column-gap:12px;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:8px;padding:12px 14px;text-decoration:none !important;color:#2b2b2b !important;font-weight:700;font-size:15px;line-height:1.35}
html body #main .sct.fd .fd-prose p.nh-linkcard > a::after{content:"";width:8px;height:8px;border-right:2px solid #3b755f;border-top:2px solid #3b755f;transform:rotate(45deg);justify-self:end;margin-right:2px}
html body #main .nh-lc__i{display:grid !important;place-items:center;width:40px;height:40px;border-radius:50%;background:#eaf2ee;color:#3b755f}
html body #main .nh-lc__i svg{width:20px;height:20px}
html body #main .sct.fd .fd-prose p.nh-linkcard + p:not(.nh-linkcard){margin-top:16px !important}
  /* Wishlist (Carrie, Nov 3): saved items as compact white rows like the cart (small photo, bold name and price, size,
     quantity and Add to cart), a small gray "Remove" link instead of the red trash box, the number of saved items on
     top, and a friendlier empty state. */
html body #main .wishlist-page__grid{grid-template-columns:minmax(0,1fr) !important;gap:10px !important}
html body #main .wishlist-page__card{position:relative !important;display:grid !important;grid-template-columns:84px minmax(0,1fr);grid-template-areas:"img info" "img ctrl";column-gap:14px;row-gap:8px;align-items:start;background:#fff !important;border:1px solid rgba(0,0,0,.08) !important;border-radius:8px !important;padding:12px !important;box-shadow:none !important}
html body #main .wishlist-page__card > .product-card__figure{grid-area:img;position:static !important;width:84px;aspect-ratio:1;border-radius:6px;overflow:hidden;margin:0 !important}
html body #main .wishlist-page__card > .product-card__figure > a{display:block;width:100%;height:100%}
html body #main .wishlist-page__card .product-card__image{width:100% !important;height:100% !important;object-fit:cover;border-radius:6px}
html body #main .wishlist-page__card > .product-card__info{grid-area:info;display:flex !important;flex-direction:column;align-items:flex-start;gap:2px;padding:0 64px 0 0 !important;margin:0 !important;text-align:left}
html body #main .wishlist-page__card .product-card__title{font-family:'Roboto Condensed',sans-serif;font-weight:700;font-size:16px;line-height:1.25}
html body #main .wishlist-page__card .wishlist-page__price{font-size:15px;color:#2b2b2b}
html body #main .wishlist-page__card > .wishlist-page__controls{grid-area:ctrl;display:grid !important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin:0 !important}
html body #main .wishlist-page__controls > .relative{grid-column:1 / -1}
html body #main .wishlist-page__controls select{height:40px;font-size:14px;padding-top:0;padding-bottom:0}
html body #main .wishlist-page__quantity-selector{width:100% !important;height:40px;display:flex !important;overflow:hidden}
html body #main .wishlist-page__quantity-selector .quantity-selector__button{flex:0 0 34px !important;width:34px !important;min-width:0 !important;padding:0 !important}
html body #main .wishlist-page__quantity-selector .quantity-selector__input{flex:1 1 auto !important;min-width:0 !important;width:auto !important}
html body #main .wishlist-page__add-to-cart{height:40px !important;min-height:40px;padding:0 10px !important;margin:0 !important}
html body #main .wishlist-page__remove{position:absolute !important;top:10px !important;right:12px !important;left:auto !important;bottom:auto !important;width:auto !important;height:auto !important;min-width:0 !important;padding:2px 0 !important;background:none !important;border:0 !important;border-radius:0 !important;box-shadow:none !important;color:#666 !important;font:400 13px/1.2 'Roboto Condensed',sans-serif !important;text-decoration:underline;text-underline-offset:2px}
html body #main .wishlist-page__remove svg{display:none !important}
html body #main .wishlist-page__remove::after{content:"Remove"}
html body #main .nh-wl-count{display:block;font:700 16px/1.3 'Roboto Condensed',sans-serif;color:#2b2b2b;margin:0 0 10px}
html body #main .wishlist-page__grid.nh-wl-is-empty{display:block !important;text-align:center;color:#555;font-size:15px}
html body #main .wishlist-page__grid.nh-wl-is-empty .wishlist-page__empty::before{content:"";display:block;width:48px;height:48px;margin:8px auto 14px;border-radius:50%;background:#eaf2ee url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233b755f' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M12 20s-7.5-4.6-7.5-10A4.3 4.3 0 0 1 12 7.3 4.3 4.3 0 0 1 19.5 10C19.5 15.4 12 20 12 20z'/%3E%3C/svg%3E") center/24px no-repeat}
html body #main .wishlist-page__grid.nh-wl-is-empty .wishlist-page__empty{margin:0 !important;padding:0 !important}
html body #main .page:has(> [data-nh-wishlist-page]){row-gap:0 !important}
html body #main .nh-wl-empty{display:grid;gap:8px;margin:20px 0 0}
html body #main .nh-wl-empty a{display:flex;align-items:center;justify-content:center;height:48px;border-radius:6px;border:2px solid #3b755f;font:700 16px/1 'Roboto Condensed',sans-serif;text-decoration:none !important}
html body #main .nh-wl-empty a:first-child{background:#3b755f;color:#fff !important}
html body #main .nh-wl-empty a + a{background:#fff;color:#3b755f !important}
  /* Policy pages (Carrie, Nov 3: "use your creativity"): green header band with a row of policy chips, a pale green page
     with each section in a white card, an "On this page" jump list, smaller headings, green list dots, and the shipping
     times table as stacked cards. Words are unchanged. */
html body #main .shopify-policy__container{max-width:none !important;margin:0 !important;padding:0 var(--container-gutter, 20px) 28px !important;row-gap:0 !important;background:#f3f7f5}
html body #main .shopify-policy__title{margin:0 calc(-1 * var(--container-gutter, 20px)) 16px !important;padding:28px var(--container-gutter, 20px) 22px !important;background:#3b755f;color:#fff;text-align:left !important}
html body #main .shopify-policy__title h1{color:#fff !important;margin:0 !important;font-size:40px;line-height:1.05}
html body #main .nh-pol-eyebrow{display:block;font:700 14px/1 'Roboto Condensed',sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#cfe3d8;margin:0 0 10px}
html body #main .nh-pol-nav{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0;padding:0;list-style:none}
html body #main .nh-pol-nav a{display:inline-flex;align-items:center;height:36px;padding:0 14px;border-radius:18px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.35);color:#fff !important;font:700 15px/1 'Roboto Condensed',sans-serif;text-decoration:none !important}
html body #main .nh-pol-nav a[aria-current="page"]{background:#fff;color:#3b755f !important;border-color:#fff}
html body #main .shopify-policy__body{margin:0 !important}
html body #main .shopify-policy__body .rte{max-width:none !important}
html body #main .nh-pol-jump{display:block;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:8px;margin:0 0 12px}
html body #main .nh-pol-jump > summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:center;position:relative;padding:14px 44px;font:700 16px/1.2 'Roboto Condensed',sans-serif;color:#2b2b2b}
html body #main .nh-pol-jump > summary::-webkit-details-marker{display:none}
html body #main .nh-pol-jump > summary::after{content:"+";font:700 24px/1 'Roboto Condensed',sans-serif;color:#3b755f;position:absolute;right:16px;top:50%;transform:translateY(-50%)}
html body #main .nh-pol-jump[open] > summary::after{content:"\2212"}
html body #main .nh-pol-jump ol{list-style:none;margin:0 !important;padding:0 16px 10px !important;counter-reset:nhj}
html body #main .nh-pol-jump li{margin:0 !important;padding:0 !important;border-top:1px solid rgba(0,0,0,.07)}
html body #main .nh-pol-jump li::before{display:none !important}
html body #main .nh-pol-jump a{display:block;text-align:left;padding:13px 0 9px;color:#3b755f !important;font-weight:700;text-decoration:none !important;background:none !important;font-size:15px}
html body #main .nh-pol-sec{display:block;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:8px;padding:16px !important;margin:0 0 12px !important;scroll-margin-top:calc(var(--sticky-area-height, 150px) + 12px)}
html body #main .nh-pol-sec > :last-child{margin-bottom:0 !important}
html body #main .nh-pol-sec > p{margin:0 0 12px}
html body #main .nh-pol-sec h2{font-size:24px !important;line-height:1.1 !important;margin:0 0 10px !important}
html body #main .nh-pol-sec .nh-pol-h{display:block;font-family:'Antonio','Anton',sans-serif;font-weight:700;font-size:22px;line-height:1.15;text-transform:uppercase;color:#2b2b2b;margin:0 0 10px !important}
html body #main .nh-pol-sec .nh-pol-h + br{display:none}
html body #main .shopify-policy__body ul{list-style:none !important;padding:0 !important}
html body #main .shopify-policy__body ul > li{position:relative;padding-left:20px !important;margin:0 0 8px !important}
html body #main .shopify-policy__body ul > li::before{content:"";position:absolute;left:2px;top:.62em;width:8px;height:8px;border-radius:50%;background:#3b755f}
html body #main .shopify-policy__body table.nh-pol-has-cards{display:none !important}
html body #main .nh-pol-ship{display:grid;gap:8px;margin:12px 0 0}
html body #main .nh-pol-ship__g{background:#f3f7f5;border-radius:8px;padding:12px}
html body #main .nh-pol-ship__d{font:700 15px/1.3 'Roboto Condensed',sans-serif;color:#2b2b2b;margin:0 0 8px}
html body #main .nh-pol-ship__r{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:8px;padding:10px 12px;margin:0 0 6px;font-size:14px;line-height:1.35}
html body #main .nh-pol-ship__r:last-child{margin-bottom:0}
html body #main .nh-pol-ship__t{font-weight:700;color:#3b755f;text-align:right;max-width:150px}
  /* Footer: "independent, woman-owned" line gets room on the left and right (Carrie, Nov 3). */
html body [id^="shopify-section-sections--"][id$="__rich_text_XkwWGp"] .rich-text__content{padding-left:32px !important;padding-right:32px !important}
  /* Page not found (404), phones (Carrie, Nov 3): green Search button, white outline chips, less space under the band. */
html body [id^="shopify-section-template--"][id$="__hdr"] .nuh__form button{background:#23493a !important;color:#fff !important;font-family:'Roboto Condensed',sans-serif !important;font-weight:700 !important;border:0 !important}
html body [id^="shopify-section-template--"][id$="__hdr"] .nuh__chips a{background:transparent !important;border:1.5px solid rgba(255,255,255,.85) !important;color:#fff !important}
html body [id^="shopify-section-template--"][id$="__hdr"] .nuh-pop{padding-top:16px !important}
  /* Reviews (Judge.me), phones (Carrie, Nov 3): "Write a review" solid green, "Ask a question" green outline; bold, 6px corners. */
html body .jm-action-buttons .jm-button{border-radius:6px !important;font-family:'Roboto Condensed',sans-serif !important;font-weight:700 !important;min-height:44px !important}
html body .jm-action-buttons .jm-button--primary{background:#3b755f !important;border:1.5px solid #3b755f !important;color:#fff !important}
html body .jm-action-buttons .jm-button--secondary{background:#fff !important;border:1.5px solid #3b755f !important;color:#3b755f !important}
  /* Cart page, phones (Carrie, Nov 3): thicker free shipping bar, Subtotal only when it differs from Total, order note behind a link,
     the three notes above Checkout as rows with icons, and a pinned Total + Checkout bar until the real button is on screen. */
html body main .cart-header progress-bar{height:8px !important;border-radius:999px !important;overflow:hidden}
html body main .cart-form__totals > .nh-same{display:none !important}
html body main cart-note.nh-note-closed{display:none !important}
html body main .nh-note-open{display:block;background:none;border:0;padding:0;margin:0;font:700 15px/1.3 'Roboto Condensed',sans-serif;color:#3b755f;text-decoration:underline;text-underline-offset:3px;cursor:pointer;text-align:left}
html body main #cart-trust-reinforcement{gap:8px !important;padding:4px 0 !important;font-size:14px !important;color:#2b2b2b !important}
html body main #cart-trust-reinforcement > *{display:block;position:relative;margin:0 !important;padding:10px 12px 10px 42px;background:#f3f7f5;border-radius:8px;line-height:1.4}
html body main #cart-trust-reinforcement > *::before{content:"";position:absolute;left:12px;top:11px;width:20px;height:20px;background:center/20px 20px no-repeat}
html body main #cart-trust-reinforcement > .usps-delay-notice::before{background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233b755f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 4h14v12H1z'/%3E%3Cpath d='M15 8h4l4 4v4h-8z'/%3E%3Ccircle cx='6' cy='18' r='2'/%3E%3Ccircle cx='18' cy='18' r='2'/%3E%3C/svg%3E")}
html body main #cart-trust-reinforcement > p:not(.usps-delay-notice)::before{background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233b755f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 1 0 3-6.7'/%3E%3Cpath d='M3 3v6h6'/%3E%3C/svg%3E")}
html body main #cart-trust-reinforcement > #cart-environmental-impact::before{background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233b755f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 20A7 7 0 0 1 4 13c0-6 7-10 16-10 0 9-4 16-10 16'/%3E%3Cpath d='M4 21c3-6 7-9 12-11'/%3E%3C/svg%3E")}
html body main #cart-trust-reinforcement > #cart-environmental-impact:not(:has(span)){display:none}
html body main #cart-trust-reinforcement a{color:#3b755f !important;font-weight:700;text-decoration:underline !important}
  .nh-cartbar{position:fixed;left:0;right:0;bottom:0;z-index:15;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid rgba(0,0,0,.1);box-shadow:0 -4px 14px rgba(0,0,0,.08);transition:transform .2s}
  .nh-cartbar[hidden]{display:flex !important;transform:translateY(110%);pointer-events:none}
  .nh-cartbar__t{display:flex;flex-direction:column;line-height:1.15;font-family:'Roboto Condensed',sans-serif;color:#2b2b2b}
  .nh-cartbar__t small{font-size:13px;color:#6b6b6b}
  .nh-cartbar__t b{font-size:20px}
  .nh-cartbar__b{flex:0 0 auto;min-width:150px;height:46px;display:inline-flex !important;align-items:center;justify-content:center;text-align:center;padding:0 20px !important;border:0;border-radius:6px;background:#3b755f;color:#fff;font:700 17px/1 'Roboto Condensed',sans-serif;cursor:pointer}
  /* Contact page, phones (Carrie, Nov 3): email fits on one line, whole Call/Email cards are tappable, a "Send us a message"
     button in the green band jumps to the form, and the form's button text matches the other green buttons. */
html body .ct-card a.ct-big[href^="mailto:"]{font-size:16px !important;white-space:nowrap}
html body .ct-card:has(a.ct-big[href^="tel:"], a.ct-big[href^="mailto:"]){position:relative}
html body .ct-card a.ct-big[href^="tel:"]::after, html body .ct-card a.ct-big[href^="mailto:"]::after{content:"";position:absolute;inset:0;border-radius:inherit}
html body .ct-hero .nh-ct-jump{display:inline-flex;align-items:center;justify-content:center;margin-top:16px;height:48px;padding:0 20px;border-radius:6px;background:#fff;border:1.6px solid #fff;color:#3b755f !important;font:700 16px/1 'Roboto Condensed',sans-serif;text-decoration:none !important}
html body #contact-form{scroll-margin-top:calc(var(--sticky-area-height, 150px) + 12px)}
html body .ct-form .ct-form__foot .button{font-size:17px !important;font-weight:700 !important}
  /* Rewards page, phones (Carrie, Nov 3): "Join now" and "Log in" are two equal halves, lining up with the cards below. */
html body .shopify-section--main-program-page .pg-btns{display:flex !important;width:100%}
html body .shopify-section--main-program-page .pg-btns > .pg-btn{flex:1 1 0;justify-content:center;text-align:center}
  /* Soap School articles, phones (Carrie, Nov 3): no duplicate breadcrumb trail, title band runs into the Short answer,
     green list dots and numbered circles, and "More guides" as full-width rows. Words are unchanged. */
html body main:has(.sct-art) .shopify-section--breadcrumbs{display:none !important}
html body #main .sct-art > .sct-banner, html body .sct-art > .sct-banner{margin-bottom:0 !important;padding-bottom:12px !important}
html body #main .sct-art .sct-answer{padding-top:10px !important}
html body #main .sct-art:not(:has(.sct-answer)) > .sct-banner{margin-bottom:24px !important;padding-bottom:24px !important}
html body .sct-art .nh-cap{text-transform:uppercase}
html body .sct-art .sct-body > h2{border-top:0 !important;padding-top:0 !important;margin-top:24px !important}
html body .sct-art .sct-body > h3{margin-top:24px !important}
html body .sct-art .sct-body > h2 + h3{margin-top:12px !important}
html body .sct-art .sct-body ul:not([class]){list-style:none !important;padding-left:0 !important}
html body .sct-art .sct-body ul:not([class]) > li{position:relative;padding-left:20px !important;list-style:none !important}
html body .sct-art .sct-body ul:not([class]) > li::before{content:"";position:absolute;left:2px;top:.62em;width:8px;height:8px;border-radius:50%;background:#3b755f}
html body .sct-art .sct-body ol:not([class]){list-style:none !important;padding-left:0 !important;counter-reset:nhol}
html body .sct-art .sct-body ol:not([class]) > li{position:relative;padding-left:38px !important;list-style:none !important;counter-increment:nhol;min-height:26px}
html body .sct-art .sct-body ol:not([class]) > li::before{content:counter(nhol);position:absolute;left:0;top:.05em;width:26px;height:26px;border-radius:50%;background:#3b755f;color:#fff;font:700 14px/26px 'Roboto Condensed',sans-serif;text-align:center}
html body .sct-art .sct-more > h2{text-align:left !important}
html body .sct-art .sct-more .sct-chips{display:flex !important;flex-direction:column !important;align-items:stretch !important;gap:8px !important}
html body .sct-art .sct-more .sct-chips > li{width:100%}
html body .sct-art .sct-more .sct-chip{display:flex !important;width:100% !important;justify-content:flex-start !important;align-items:center;gap:10px;text-align:left !important;border-radius:8px !important;padding:12px 40px 12px 14px !important;position:relative;line-height:1.3;white-space:normal !important}
html body .sct-art .sct-more .sct-chip .sct-dot{flex:0 0 auto}
html body .sct-art .sct-more .sct-chips > li.nh-more-hide{display:none !important}
html body #main .sct-art > .sct-more{margin-top:24px !important}
html body .sct-art .sct-more .nh-more-all + .sct-chips{margin-top:24px !important}
html body .sct-art .sct-more .nh-more-all{display:flex;align-items:center;justify-content:center;width:100%;min-height:46px;margin-top:10px;padding:0 16px;border:1.5px solid #3b755f;border-radius:6px;background:#fff;color:#3b755f;font:700 16px/1.2 'Roboto Condensed',sans-serif;cursor:pointer}
html body .sct-art .sct-more .sct-chip::after{content:"";position:absolute;right:12px;top:50%;width:18px;height:18px;margin-top:-9px;background:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233b755f' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6l6 6-6 6'/%3E%3C/svg%3E") center/18px 18px no-repeat}
  /* Nurture Handmade Blog posts, phones (Carrie, Nov 3): recipe tables as rows, headings on the left, green initial
     circles for comments, full-width "Post comment" button. Numbers and words in the posts are unchanged. */
html body .sct-art .sct-body > :is(h2,h3,h4)[style*="center"]{text-align:left !important}
html body .sct-art .nh-tbl-has{display:none !important}
html body .sct-art .nh-tbl{list-style:none !important;margin:16px 0 0 !important;padding:0 !important;display:grid;gap:8px}
html body .sct-art .nh-tbl > li{list-style:none !important;margin:0 !important;padding:12px 14px !important;background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:8px}
html body .sct-art .nh-tbl > li::before{content:none !important}
html body .sct-art .nh-tbl__n{display:block;font:700 16px/1.3 'Roboto Condensed',sans-serif;color:#2b2b2b;margin-bottom:6px}
html body .sct-art .nh-tbl__v{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:4px 10px;margin:0}
html body .sct-art .nh-tbl__v span{display:flex;flex-direction:column;font-size:13px;line-height:1.3;color:#6b6b6b}
html body .sct-art .nh-tbl__v b{font-size:16px;color:#3b755f}
html body .shopify-section--main-article .comment__gravatar.nh-av-hide{display:none !important}
html body .shopify-section--main-article .nh-av{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#3b755f;color:#fff;font:700 16px/1 'Roboto Condensed',sans-serif;text-transform:uppercase}
html body .shopify-section--main-article form:has(textarea) .justify-self-start{justify-self:stretch !important;width:100%}
html body .shopify-section--main-article form:has(textarea) button[type="submit"]{width:100% !important;font-size:17px !important;font-weight:700 !important}
  /* Blog recipes, phones (Carrie, Nov 3): each "... RECIPE:" line + its list becomes a light green recipe box, and posts
     with a recipe get a "Jump to recipe" button in the title band. Ingredients and amounts are unchanged. */
html body .sct-art .nh-recipe{margin:24px calc(-1 * var(--container-gutter, 20px)) 0;padding:20px var(--container-gutter, 20px);background:#f3f7f5;scroll-margin-top:calc(var(--sticky-area-height, 150px) + 12px)}
html body .sct-art .nh-recipe + .nh-recipe{margin-top:0;border-top:1px solid rgba(59,117,95,.15)}
html body .sct-art .nh-recipe > p.nh-recipe__src{display:none !important}
html body .sct-art .nh-recipe__h{margin:0 0 12px !important;padding:0 !important;color:#3b755f !important}
html body .sct-art .nh-recipe > ul, html body .sct-art .nh-recipe > ol{margin:0 !important}
html body .sct-art .sct-banner .nh-jump{display:inline-flex;align-items:center;justify-content:center;margin-top:16px;height:46px;padding:0 20px;border-radius:6px;background:#3b755f;color:#fff !important;font:700 16px/1 'Roboto Condensed',sans-serif;text-decoration:none !important}
  /* About Us, phones (Carrie, Nov 3): no breadcrumb trail, equal hero buttons, the "Since 2004" band right under the
     hero and shorter, and "How we work" cards as compact rows with the icon on the left like "Our standards". */
html body main:has(.sct.ab) .shopify-section--breadcrumbs{display:none !important}
html body .ab .ab-btns{display:flex !important;width:100%}
html body .ab .ab-btns > *{flex:1 1 0;display:inline-flex;justify-content:center;text-align:center}
html body .ab .ab-sec{padding-top:24px !important}
html body .ab .ab-quote{margin-top:24px !important}
html body .ab .ab-story{gap:24px !important}
html body .ab .ab-hero + .ab-sec{padding-top:0 !important}
html body .ab .ab-since{min-height:0 !important;padding-top:28px !important;padding-bottom:28px !important}
html body .ab .ab-value{display:grid !important;grid-template-columns:44px 1fr;column-gap:14px;align-items:start}
html body .ab .ab-value > .ab-value__icon{grid-row:1 / span 2;width:44px !important;height:44px !important;margin:0 !important}
html body .ab .ab-value > .ab-value__icon svg{width:20px;height:20px}
html body .ab .ab-value > h3{margin:0 0 4px !important;font-size:20px !important;line-height:1.15 !important}
html body .ab .ab-value > p{margin:0 !important;grid-column:2}
  /* Lye Calculator, phones (Carrie, Nov 3): green-circle step headings, green links, oil picker before a folded
     "Show oil properties" chart, light green summary with Save as PDF / Print first. Calculations are untouched. */
html body main:has(.tp-tool) .shopify-section--breadcrumbs{display:none !important}
html body .nh-lye-calc__panel-head h2{display:flex !important;align-items:center;gap:10px;font:700 18px/1.2 'Roboto Condensed',sans-serif !important;color:#2b2b2b !important;margin:0 !important}
html body .nh-lye-calc__panel-head .nh-step-n{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#3b755f;color:#fff;font:700 15px/1 'Roboto Condensed',sans-serif}
html body #main .tp-body p > a:not([class]):not(:has(svg)), html body #main .tp-body .nh-lye-calc__noprint > a, html body #main .tp-body .nh-lye-calc__glossarylink > a{color:#3b755f !important;font-weight:700 !important;text-decoration:underline !important;text-underline-offset:3px}
html body .nh-lye-calc__oilpanel > .nh-pick{order:-1}
html body .nh-lye-calc__oilpanel > details.nh-props{border:1px solid rgba(0,0,0,.1);border-radius:8px;background:#fff}
html body .nh-lye-calc__oilpanel > details.nh-props > summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:14px 16px;font:700 16px/1.2 'Roboto Condensed',sans-serif;color:#3b755f}
html body .nh-lye-calc__oilpanel > details.nh-props > summary::-webkit-details-marker{display:none}
html body .nh-lye-calc__oilpanel > details.nh-props > summary::after{content:"+";font:700 22px/1 'Roboto Condensed',sans-serif}
html body .nh-lye-calc__oilpanel > details.nh-props[open] > summary::after{content:"\2212"}
html body .nh-lye-calc__oilpanel > details.nh-props > div{padding:0 12px 12px}
html body .nh-lye-calc__toolbar{background:#f3f7f5 !important;display:flex !important;flex-wrap:wrap !important;gap:10px 16px !important}
html body .nh-lye-calc__toolbar > .nh-lye-calc__btn:not(.nh-lye-calc__btn--ghost){order:0;flex:1 1 calc(50% - 8px) !important;width:auto !important}
html body .nh-lye-calc__toolbar > .nh-lye-calc__btn--ghost{order:1;flex:0 0 auto !important;width:auto !important;min-height:0 !important;height:auto !important;padding:4px 0 !important;background:none !important;border:0 !important;box-shadow:none !important;color:#3b755f !important;font-weight:700 !important;text-decoration:underline !important;text-underline-offset:3px}
html body .nh-lye-calc__toolbar > .nh-lye-calc__printopts{order:2;flex:1 1 100%}
html body .nh-lye-calc__notesbox{background:#f3f7f5 !important}
html body .nh-lye-calc__notesbox + .nh-lye-calc__toolbar, html body .nh-lye-calc__toolbar.tp-hide-bt{margin-top:-16px !important}
  /* Recipe oil list, phones: each oil gets its own card-like row with the full-width oil name on top and
     +/-, Percent and Weight underneath, so long oil names fit. */
html body .nh-lye-calc__recipetable, html body .nh-lye-calc__recipetable tbody, html body .nh-lye-calc__recipetable tfoot{display:block !important;width:100% !important}
html body .nh-lye-calc__recipetable thead{display:none !important}
html body .nh-lye-calc__recipetable tbody{margin:0 calc(-1 * var(--container-gutter, 20px)) !important;width:auto !important;border-top:0 !important}
html body .nh-lye-calc__recipetable tbody tr{display:grid !important;grid-template-columns:1fr 1fr;gap:10px 12px;align-items:end;padding:14px var(--container-gutter, 20px) !important;margin:0;background:#fff;border:0 !important;border-bottom:1px solid rgba(0,0,0,.1) !important;border-radius:0}
html body .nh-lye-calc__recipetable tbody tr:nth-child(even){background:#f8faf9}
html body .nh-lye-calc__recipetable .nh-lye-calc__rownum{flex:0 0 auto;min-width:22px;margin-right:8px;font:700 18px/1 'Roboto Condensed',sans-serif !important;color:#3b755f !important;text-align:left}
html body .nh-lye-calc__recipetable tbody td{display:block !important;padding:0 !important;border:0 !important;width:auto !important;background:none !important}
html body .nh-lye-calc__recipetable tbody td:nth-child(2){grid-column:1 / -1;grid-row:1}
html body .nh-lye-calc__recipetable tbody td:nth-child(2) > div{width:100%}
html body .nh-lye-calc__recipetable tbody td:nth-child(2) select{flex:1 1 auto;width:100% !important;max-width:none !important;min-width:0;font-weight:700}
html body .nh-lye-calc__recipetable tbody td:nth-child(3){grid-column:1;grid-row:2}
html body .nh-lye-calc__recipetable tbody td:nth-child(4){grid-column:2;grid-row:2}
html body .nh-lye-calc__recipetable tbody td:nth-child(1){grid-column:1 / -1;grid-row:3;display:flex !important;justify-content:space-between;align-items:center}
html body .nh-lye-calc__recipetable tbody td:only-child{grid-column:1 / -1;grid-row:1;display:block !important}
html body .nh-lye-calc__recipetable tbody td:nth-child(3)::before{content:"Percent";display:block;font-size:12px;line-height:1.2;color:#6b6b6b;margin-bottom:4px;text-align:left}
html body .nh-lye-calc__recipetable tbody td:nth-child(4)::before{content:var(--nhw, "Weight");display:block;font-size:12px;line-height:1.2;color:#6b6b6b;margin-bottom:4px;text-align:left}
html body .nh-lye-calc__recipetable tbody td:only-child::before{content:none}
html body .nh-lye-calc__recipetable .nh-lye-calc__rowbtn{width:auto !important;height:auto !important;min-height:32px;padding:4px 0 !important;border:0 !important;background:none !important;box-shadow:none !important;font-size:0 !important;line-height:1 !important;cursor:pointer}
html body .nh-lye-calc__recipetable .nh-lye-calc__rowbtn::before{font:700 14px/1.2 'Roboto Condensed',sans-serif;text-decoration:underline;text-underline-offset:3px}
html body .nh-lye-calc__recipetable .nh-lye-calc__rowbtn--add::before{content:"+ Add a row below";color:#3b755f}
html body .nh-lye-calc__recipetable .nh-lye-calc__rowbtn--remove::before{content:"Remove";color:#96382a}
html body .nh-lye-calc__recipetable tbody td input{width:100% !important;max-width:none !important}
html body .nh-lye-calc__recipetable tfoot tr{display:flex !important;justify-content:flex-end;gap:16px;padding:12px 0 0;font-weight:700}
html body .nh-lye-calc__recipetable tfoot td{display:block !important;padding:0 !important;border:0 !important}
html body .nh-lye-calc__recipetable tfoot td:first-child{display:none !important}
html body .nh-lye-calc__recipetable tfoot td:nth-child(2){margin-right:auto}
  /* Saved recipes area, phones (Carrie, Nov 3): saved-recipes menu full width on top, Save recipe / Delete as equal halves,
     the tip in its own light green box, and the "Scroll down" hint hidden (the pinned recipe bar does that job). */
html body #main .nh-lye-calc__saverow[hidden]{display:none !important}
html body #main .nh-lye-calc__saverow:not([hidden]){display:flex !important;flex-wrap:wrap !important;gap:10px !important;margin-top:20px !important}
html body #main .nh-lye-calc__saverow > .nh-lye-calc__select-wrap{order:-1;flex:1 1 100% !important;width:100% !important;max-width:none !important}
html body #main .nh-lye-calc__saverow > .nh-lye-calc__select-wrap select{width:100% !important}
html body #main .nh-lye-calc__saverow > button{flex:1 1 0 !important;width:auto !important;min-height:46px;margin:0 !important}
html body .nh-lye-calc__savehint{margin:16px 0 0 !important;padding:12px 14px !important;background:#f3f7f5;border-radius:8px;font-size:14px !important;line-height:1.5 !important}
html body .nh-lye-calc__scrollhint{display:none !important}
  /* Summary quality and fatty acid tables, phones: names, ranges and numbers stay on one line; the bar column takes what is left. */
html body #nh-lye-quality-body td:nth-child(-n+3), html body #nh-lye-fa-body td:nth-child(-n+2), html body table:has(> #nh-lye-fa-body) thead th:first-child{white-space:nowrap !important}
html body #nh-lye-quality-body td, html body #nh-lye-fa-body td{vertical-align:middle !important;padding:7px 8px !important}
html body #nh-lye-quality-body td:last-child, html body #nh-lye-fa-body td:last-child{width:100%}
  /* Tool pages, phones (Carrie, Nov 3): no "?" tooltip buttons (or their pop-ups). */
html body .tp-body .nh-q, html body .nh-q__pop, html body #nh-q-pop{display:none !important}
  /* Fragrance Calculator + tool pages, phones (Carrie, Nov 4): numbered questions, a "what's still missing" box and an even
     toolkit strip. The "Quick check" card stays in the middle of the screen (Nov 3: at the bottom it was cut off). */
html body .tp-kitbar[hidden]{display:none !important}
html body .tp-kitbar:not([hidden]){display:grid !important;grid-template-columns:1fr auto;align-items:center;gap:6px 16px !important}
html body .tp-kitbar > .tp-kitbar__step{grid-column:1 / -1}
html body .tp-kitbar > .tp-kitbar__all{justify-self:end}
  /* 24px rhythm on tool pages (Carrie, Nov 4): tool to the sidebar boxes, and above Next steps. */
html body .tp-grid{row-gap:24px !important}
html body .tp-tool .nh-next:not([hidden]){margin-top:24px !important}
  /* 24px between questions and after a tool's intro line, on every tool (Carrie, Nov 4). */
html body .tp-tool .nh-frag-calc__intro{margin-bottom:24px !important}
html body .tp-tool .nh-frag-calc__row{margin-bottom:24px !important}
html body .tp-tool .nh-lye-calc__panel .nh-lye-calc__field{margin-bottom:24px !important}
html body .tp-tool .nh-mold-calc__row, html body .tp-tool .nh-color-blend__row, html body .tp-tool .nh-cost__row, html body .tp-tool .nh-cost__printgrid, html body .tp-tool #nlw-colors, html body .tp-tool .nh-meas__grid, html body .tp-tool .nh-blend__grid, html body .tp-tool .nh-swap__grid{row-gap:24px !important}
html body .tp-tool .nh-cost__row:has(+ .nh-cost__row){margin-bottom:24px !important}
html body .tp-tool .nh-meas__hint, html body .tp-tool .nh-cost__lead, html body .tp-tool .nh-fnd__tabs{margin-bottom:24px !important}
  /* Lye Calculator (Carrie, Nov 4): no gray lines between the steps or around the recipe list (the green numbered headings do the job), 24px between steps. */
html body #main .nh-lye-calc__grid > .nh-lye-calc__panel.tp-bleed{box-shadow:none !important}
html body #main .nh-lye-calc__grid > .nh-lye-calc__panel.tp-bleed:not(:first-child){padding-top:12px !important}
html body #main .nh-lye-calc__grid > .nh-lye-calc__panel.tp-bleed:not(:last-child){padding-bottom:12px !important}
html body #main .nh-lye-calc__panel > .nh-lye-calc__field:last-child{margin-bottom:0 !important}
html body #main .nh-lye-calc__recipetable tr, html body #main .nh-lye-calc__recipetable td, html body #main .nh-lye-calc__recipetable th{border-top:0 !important;border-bottom:0 !important}
html body #main .nh-lye-prog{border:0 !important}
html body #main .nh-lye-calc__recipetable + .nh-lye-prog, html body #main .nh-lye-prog{margin-top:24px !important}
html body #main .nh-lye-calc__saverow.nh-lye-calc__saverow{margin-top:24px !important;padding-top:0 !important;border-top:0 !important}
html body #main .nh-lye-calc__savehint{margin-top:24px !important}
html body #main .nh-lye-calc__recipetable tbody tr:first-child{padding-top:0 !important}
html body #main .nh-lye-calc__recipetable tbody td:only-child{padding:0 !important}
html body #main .nh-lye-calc__toolbar.nh-bleed, html body #main .nh-lye-calc__notesbox.nh-bleed{border-top:0 !important;border-bottom:0 !important}
html body #main .nh-lye-calc__summary-head, html body #main .nh-lye-calc__toolbar, html body #main #nh-lye-summary-body > *{margin-bottom:24px !important}
html body #main #nh-lye-summary-body .nh-lye-calc__twocol{row-gap:24px !important}
html body #main .nh-lye-calc__notesbox.nh-bleed{margin-bottom:0 !important}
html body #main .nh-lye-calc__notesbox + .nh-lye-calc__toolbar{margin-top:0 !important}
html body .nh-frag-calc__card{counter-reset:nhf}
html body .nh-frag-calc__row{counter-increment:nhf}
html body .nh-frag-calc__row > .nh-frag-calc__field:first-child > label{display:flex !important;align-items:center;gap:10px;font:700 17px/1.25 'Roboto Condensed',sans-serif !important;color:#2b2b2b !important;margin-bottom:10px !important;text-transform:none !important;letter-spacing:0 !important}
html body .nh-frag-calc__row > .nh-frag-calc__field:first-child > label::before{content:counter(nhf);flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#3b755f;color:#fff;font:700 15px/1 'Roboto Condensed',sans-serif}
html body .nh-frag-calc__row > .nh-frag-calc__field:not(:first-child) > label{min-height:28px;display:flex !important;align-items:center;margin-bottom:10px !important}
html body #nh-frag-empty.is-visible{border-top:0 !important;padding:14px 16px !important;margin-top:8px;background:#f3f7f5;border-radius:8px;font-size:15px !important;line-height:1.45 !important;color:#2b2b2b}
html body #nh-frag-empty.is-visible[data-need]{font-size:0 !important;border-top:0 !important;padding:14px 16px !important;margin-top:8px;background:#f3f7f5;border-radius:8px}
html body #nh-frag-empty.is-visible[data-need]::before{content:attr(data-need);font:400 15px/1.45 'Roboto Condensed',sans-serif;color:#2b2b2b}
  /* Fragrance Calculator results, phones (Carrie, Nov 4): a line that repeats what they entered, Light / Medium / Strong as
     tiles (ounces large, grams under), and the IFRA-limit note as an amber heads-up. Numbers come from the tool's table. */
html body #nh-frag-table.nh-frag-tiled{display:none !important}
html body .nh-frag-for{margin:24px 0 10px;font:400 14px/1.4 'Roboto Condensed',sans-serif;color:#555}
html body .nh-frag-for b{color:#2b2b2b}
html body .nh-frag-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}
html body .nh-frag-tiles.is-one{grid-template-columns:1fr}
html body .nh-frag-tile{background:#fff;border:1px solid rgba(59,117,95,.3);border-radius:8px;padding:12px 8px;text-align:center}
html body .nh-frag-tile__n{display:block;font:700 13px/1.2 'Roboto Condensed',sans-serif;letter-spacing:.04em;text-transform:uppercase;color:#3b755f;margin-bottom:6px}
html body .nh-frag-tile__oz{display:block;font:700 24px/1.1 'Roboto Condensed',sans-serif;color:#2b2b2b}
html body .nh-frag-tile__oz small{font-size:14px;font-weight:700;margin-left:2px}
html body .nh-frag-tile__g{display:block;margin-top:4px;font-size:14px;color:#6b6b6b}
html body #nh-frag-cap-note.is-visible{margin-top:10px !important;padding:12px 14px !important;background:#fdf4e3;border:1px solid #e9c46a;border-radius:8px;font-size:14px !important;color:#5f430d !important}
html body .nh-lye-prog{margin:12px 0 0;padding:12px 14px;border-radius:8px;background:#fdf4e3;border:1px solid #e9c46a}
html body .nh-lye-prog.is-ok{background:#eaf3ee;border-color:#3b755f}
html body .nh-lye-prog.is-over{background:#fbeaea;border-color:#c0504d}
html body .nh-lye-prog.is-empty{background:#f3f7f5;border-color:rgba(59,117,95,.25)}
html body .nh-lye-prog__t{display:block;font:700 15px/1.3 'Roboto Condensed',sans-serif;color:#7a5410}
html body .nh-lye-prog.is-ok .nh-lye-prog__t{color:#3b755f}
html body .nh-lye-prog.is-over .nh-lye-prog__t{color:#a33a37}
html body .nh-lye-prog.is-empty .nh-lye-prog__t{color:#444;font-weight:400}
html body .nh-lye-prog.is-ok{display:none !important}
html body .nh-lye-prog__bar{display:block;height:8px;margin-top:8px;border-radius:999px;background:rgba(0,0,0,.08);overflow:hidden}
html body .nh-lye-prog__bar i{display:block;height:100%;border-radius:999px;background:#e9a23b;transition:width .2s}
html body .nh-lye-prog.is-ok .nh-lye-prog__bar i{background:#3b755f}
html body .nh-lye-prog.is-over .nh-lye-prog__bar i{background:#c0504d}
html body .nh-lye-prog.is-empty .nh-lye-prog__bar{display:none}
  .nh-lyebar{position:fixed;left:0;right:0;bottom:0;z-index:15;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid rgba(0,0,0,.1);box-shadow:0 -4px 14px rgba(0,0,0,.08);transition:transform .2s}
  .nh-lyebar[hidden]{display:flex !important;transform:translateY(110%);pointer-events:none}
  .nh-lyebar__t{display:flex;flex-direction:column;line-height:1.2;font-family:'Roboto Condensed',sans-serif;color:#2b2b2b;min-width:0}
  .nh-lyebar__t small{font-size:13px;color:#6b6b6b}
  .nh-lyebar__t b{font-size:17px;white-space:nowrap}
  .nh-lyebar__b{flex:0 0 auto;display:inline-flex !important;align-items:center;justify-content:center;height:44px;padding:0 16px !important;border:0;border-radius:6px;background:#3b755f;color:#fff;font:700 16px/1 'Roboto Condensed',sans-serif;cursor:pointer}
html body .tp-intro__ex{flex-direction:column !important;align-items:center !important;gap:10px !important}
html body .tp-intro__ex > .tp-intro__btn{width:100% !important;max-width:340px;justify-content:center;text-align:center;margin:0 !important}
html body .tp-intro__ex > .tp-intro__hint{text-align:center}
html body .nh-lye-calc__grid{gap:0 !important}
html body .nh-lye-calc__field--inline{flex-direction:column !important;align-items:stretch !important;gap:8px !important}
html body .nh-lye-calc__field--inline > label{white-space:nowrap;width:auto !important;flex:none !important}
html body .nh-lye-calc__field--inline > .nh-lye-calc__control{width:100% !important;max-width:none !important;flex:none !important}
html body #nh-lye-proptable-body td:first-child{white-space:nowrap}
html body .nh-lye-calc__oillist.nh-native-hide{display:none !important}
html body .nh-lye-calc__field:has(> #nh-lye-oil-filter){position:relative}
html body #nh-lye-oil-filter{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23333' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 12px center/10px 6px !important;padding-right:34px !important}
html body .nh-oildd{position:absolute;left:0;right:0;top:calc(100% + 4px);background:#fff;border:1px solid #444;border-radius:6px;max-height:260px;overflow-y:auto;-webkit-overflow-scrolling:touch;z-index:20;display:none;box-shadow:0 8px 20px rgba(0,0,0,.08)}
html body .nh-oildd.is-open{display:block}
html body .nh-oildd__opt{padding:.6rem .75rem;font:400 15px/1.3 'Roboto Condensed',sans-serif;cursor:pointer;color:#444}
html body .nh-oildd__opt:hover, html body .nh-oildd__opt.is-active{background:#f5f5f5}
html body .nh-oildd__opt b{font-weight:700;color:#3b755f}
html body .nh-oildd__none{padding:.6rem .75rem;font-size:14px;font-style:italic;color:rgba(68,68,68,.75)}
html body .nh-lye-pick-note{margin:8px 0 0;font-size:14px;color:#444}
html body .nh-lye-pick-note b{color:#3b755f}
html body #main .nh-next a.nh-next__item, html body .nh-next a.nh-next__item{text-decoration:none !important}
html body .nh-next .nh-next__t{text-decoration:underline;text-underline-offset:3px}
html body .nh-next .nh-next__s{text-decoration:none !important}
html body .nh-lye-calc__note{font-size:14px !important;line-height:1.5 !important;margin:24px 0 !important;padding:0 !important;border-top:0 !important}
html body #nh-lye-results-empty{font-size:14px !important;line-height:1.5 !important;padding:24px 0 !important;margin:-16px 0 0 !important}
  /* Mold pages (Carrie, Nov 3): look like the color pages. Holds / Makes / Inside become white rows on a pale green band
     (like "Tested in cold process soap"), and the Size and capacity tables become white rows on a band (like Use rate). */
html body #main .product-info__liquid:has(> .nh-mk){margin:0 calc(-1 * var(--container-gutter, 20px));padding:16px var(--container-gutter, 20px);background:#f3f7f5}
html body #main .product-info__block-item:has(.nh-mk) ~ .product-info__block-item:has(> .product-info__separator){display:none !important}
html body #main .nh-mk{grid-template-columns:minmax(0,1fr) !important;gap:8px !important}
html body #main .nh-mk li{background:#fff !important;border:1px solid rgba(0,0,0,.08) !important;border-radius:8px !important;padding:10px 14px !important;grid-template-columns:96px minmax(0,1fr);column-gap:12px;row-gap:0 !important;align-items:center}
html body #main .nh-mk li > span{grid-row:1 / span 2;font-family:'Roboto Condensed',sans-serif;font-size:15px !important;text-transform:none !important;letter-spacing:0 !important;color:#2b2b2b !important;font-weight:700 !important}
html body #main .nh-mk li > b, html body #main .nh-mk li > small{grid-column:2}
html body #main .nh-mk li > b{font-size:16px !important;font-weight:700 !important}
html body #main #nh-specs{background:#f3f7f5 !important;padding-top:16px !important;padding-bottom:16px !important;border-top:0 !important;border-bottom:0 !important}
html body #main #nh-specs .nh-mt table{display:block;width:100%;border:0 !important;margin:0 0 12px;background:transparent !important}
html body #main #nh-specs .nh-mt table:first-child caption{position:absolute !important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
html body #main #nh-specs .nh-mt caption{display:block;text-align:left;font:700 15px/1.3 'Roboto Condensed',sans-serif;margin:4px 0 8px;color:#2b2b2b;text-transform:none;letter-spacing:0}
html body #main #nh-specs .nh-mt tbody{display:grid;gap:8px}
html body #main #nh-specs .nh-mt tr{display:grid;grid-template-columns:96px minmax(0,1fr);column-gap:12px;align-items:center;background:#fff !important;border:1px solid rgba(0,0,0,.08) !important;border-radius:8px;padding:10px 14px}
html body #main #nh-specs .nh-mt :is(th,td){background:transparent !important;border:0 !important;padding:0 !important;text-align:left;font-size:15px}
  /* Search page: 24px from the Products / Blog posts tabs to the results (was 56px) (Nov 3) */
html body .shopify-section--main-search search-result-panel > .collection, html body .shopify-section--main-search .container > .collection{margin-top:0 !important}
  /* Slide-out cart: hide the USPS / returns / bees notes so more items fit; they still show on the cart page above Checkout (Nov 3) */
html body cart-drawer [slot="footer"] > div:not([class]):has(+ form.buy-buttons){display:none !important}
  /* Search page: no Filter and sort bar (collections only) (Carrie, Nov 3) */
html body .shopify-section--main-search facet-floating-filter.facets__floating-filter{display:none !important}
html body:has(.shopify-section--main-collection facet-floating-filter.facets__floating-filter) .shopify-section--footer{padding-bottom:calc(54px + env(safe-area-inset-bottom))}
}
/* Lye summary tables on phone screens (Carrie, Nov 4): full-width rows edge to edge, no lines, same alternating colors.
     Screen only, so printing keeps the original framed tables. */
  @media screen and (max-width: 767px) {
html body #main .nh-lye-calc__datatable{border:0 !important;border-radius:0 !important;margin-left:-20px !important;margin-right:-20px !important;width:calc(100% + 40px) !important;max-width:none !important}
html body #main .nh-lye-calc__datatable table{border:0 !important;width:100% !important}
html body #main .nh-lye-calc__datatable th, html body #main .nh-lye-calc__datatable td{border:0 !important}
html body #main .nh-lye-calc__datatable tr > :first-child:not([style*="none"]), html body #main .nh-lye-calc__datatable tr > .nh-lye-calc__checkcell{padding-left:20px !important}
html body #main .nh-lye-calc__datatable tr > :last-child{padding-right:20px !important}
    /* Sat : Unsat table gets light green rows so it stands apart from the blue table above it (Carrie, Nov 4). */
html body #main .nh-lye-calc__datatable + .nh-lye-calc__datatable .nh-lye-calc__tbl--stats tr:nth-child(odd) > *{background:#e6f2ea !important}
    /* Column headings stay on one line, e.g. "Soap Bar Quality", "Your Recipe" (Carrie, Nov 4). */
html body #main .nh-lye-calc__datatable thead th, html body #main .nh-lye-calc__datatable tr:first-child > th{white-space:nowrap !important}
  }
@media (max-width: 767px) {
  /* Tool intro band: no line under it, and no extra space before the tool (all 14 tools, Carrie, Nov 4). */
html body #main .tp-intro.tp-bleed{border:0 !important;padding-bottom:0 !important}
html body #main .nh-mold-calc__tabs, html body #main .nh-meas__tabs{padding-top:0 !important}
  /* Lye: Total row under the recipe oil list stands out (Carrie, Nov 4). */
html body #main .nh-lye-calc__recipetable tfoot tr{background:#e6f2ea !important;margin:0 calc(-1 * var(--container-gutter, 20px)) !important;padding:12px var(--container-gutter, 20px) !important}
html body #main .nh-lye-calc__recipetable tfoot td, html body #main .nh-lye-calc__recipetable tfoot th{color:#3b755f !important;font-size:14px !important;font-weight:700 !important}
  /* Lye summary: "Your Recipe" numbers line up under their heading. */
html body #main .nh-lye-calc__qualitytable tr > :nth-child(3){text-align:left !important}
  /* Lye summary bands (PDF/Print, notes): 24px inside at the top and bottom, 24px where notes meet the buttons. */
html body #main .nh-lye-calc__toolbar.nh-bleed{padding-top:24px !important;padding-bottom:24px !important}
html body #main .nh-lye-calc__notesbox.nh-bleed{padding-top:24px !important;padding-bottom:12px !important}
html body #main .nh-lye-calc__notesbox + .nh-lye-calc__toolbar.nh-bleed{padding-top:12px !important}
  /* Good to know: 24px below the band above it, not 40 (all tools). */
html body #main .tp-good{padding-top:0 !important}
  }
/* Lye: the Total row and the progress message read as one band (two rows, no gap): Total in a deeper shade of the progress color (Carrie, Nov 4). */
  @media (max-width: 767px) {
html body #main .nh-lye-calc .nh-lye-calc__recipetable + .nh-lye-prog.nh-lye-prog{margin:0 calc(-1 * var(--container-gutter, 20px)) !important;width:auto !important;max-width:none !important;padding:12px var(--container-gutter, 20px) !important}
html body #main .nh-lye-calc__recipetable:has(+ .nh-lye-prog) tfoot tr{padding-bottom:12px !important}
html body #main .nh-lye-calc__recipetable:has(+ .nh-lye-prog) tfoot tr{background:#f8e5bd !important}
html body #main .nh-lye-calc__recipetable:has(+ .nh-lye-prog) tfoot :is(td, th){color:#7a5410 !important}
html body #main .nh-lye-calc__recipetable:has(+ .nh-lye-prog.is-ok) tfoot tr{background:#d5e8dc !important}
html body #main .nh-lye-calc__recipetable:has(+ .nh-lye-prog.is-ok) tfoot :is(td, th){color:#3b755f !important}
html body #main .nh-lye-calc__recipetable:has(+ .nh-lye-prog.is-over) tfoot tr{background:#f5d3d2 !important}
html body #main .nh-lye-calc__recipetable:has(+ .nh-lye-prog.is-over) tfoot :is(td, th){color:#a33a37 !important}
html body #main .nh-lye-calc__recipetable:has(+ .nh-lye-prog.is-empty) tfoot tr{background:#e3ece7 !important}
html body #main .nh-lye-calc__recipetable:has(+ .nh-lye-prog.is-empty) tfoot :is(td, th){color:#444 !important}
html body #main .nh-lye-calc__recipetable + .nh-lye-prog{border-radius:0 !important}
  }
/* Next steps cards on phones (Carrie, Nov 4): calmer look. No underline or inline arrow; a green chevron on the right
     shows each card is tappable, like a phone settings row. Lighter subtitle. The card tints when tapped. All tools. */
  @media (max-width: 767px) {
html body #main .nh-next a.nh-next__item{position:relative !important;align-items:center !important;padding:12px 44px 12px 12px !important}
html body #main .nh-next .nh-next__t{text-decoration:none !important}
html body #main .nh-next .nh-next__t > span[aria-hidden="true"]{display:none !important}
html body #main .nh-next .nh-next__s{font-weight:400 !important;color:#555 !important}
html body #main .nh-next a.nh-next__item::after{content:"";position:absolute;right:18px;top:50%;width:9px;height:9px;border-top:2.5px solid #3b755f;border-right:2.5px solid #3b755f;transform:translateY(-50%) rotate(45deg)}
html body #main .nh-next a.nh-next__item:active{background:#eaf3ee !important}
  }
/* Guide link only once on phones: when the green banner already has the guide button, hide the sidebar's "New to the calculator? Read the guide" box (Carrie, Nov 4). */
  @media (max-width: 767px) {
html body #main:has(.tp-hero a[href*="-guide"]) .tp-side .tp-box:has(a.tp-btn[href*="-guide"]){display:none !important}
  }
/* Lye step 5 on phones (Carrie, Nov 4): "Add to recipe" sits 12px under the Jump to oil box (was 36), and the oil properties toggle sits 24px below. */
  @media (max-width: 767px) {
html body #main .nh-pick .nh-lye-calc__field{margin-bottom:0 !important}
html body #main .nh-pick #nh-lye-add-btn{margin-top:12px !important;display:flex !important}
html body #main .nh-lye-calc__oilpanel{row-gap:24px !important}
  }
/* Lye recipe summary toolbar on phones (Carrie, Nov 4): PDF and Print as equal halves, their print options right under
     them, then the three secondary links on one row in equal thirds (shorter labels via the script below). */
  @media (max-width: 767px) {
html body #main .nh-lye-calc__toolbar{column-gap:12px !important;row-gap:12px !important}
html body #main .nh-lye-calc__toolbar > #nh-lye-pdf-btn, html body #main .nh-lye-calc__toolbar > #nh-lye-print-btn{order:1 !important;flex:1 1 calc(50% - 6px) !important}
html body #main .nh-lye-calc__toolbar > .nh-lye-calc__printopts{order:2 !important;flex:1 1 100% !important;display:flex !important;justify-content:center !important;gap:20px !important;margin:0 !important}
html body #main .nh-lye-calc__toolbar > .nh-lye-calc__btn--ghost{order:3 !important;flex:1 1 0 !important;min-width:0 !important;justify-content:center !important;text-align:center !important;font-size:14px !important;padding-left:0 !important;padding-right:0 !important;white-space:nowrap !important}
html body #main .nh-lye-calc__toolbar > .nh-lye-calc__printopts + .nh-lye-calc__btn--ghost, html body #main .nh-lye-calc__toolbar > .nh-lye-calc__btn--ghost{margin-top:4px !important}
  }
/* Accessibility, Lye Calculator on phones (Nov 4 check): stronger text contrast (WCAG AA 4.5:1). */
  @media (max-width: 767px) {
html body #main .nh-lye-calc__recipetable:has(+ .nh-lye-prog.is-ok) tfoot :is(td, th){color:#23493a !important}
html body #main .nh-lye-calc__datatable thead th{color:#23493a !important}
  }
/* Lye "Soap Bar Quality" table on phones (Carrie, Nov 4): bars start right after the Your Recipe numbers and run longer
     (fixed column widths; the "Your Recipe" heading runs over the bar column). */
  @media (max-width: 767px) {
html body #main .nh-lye-calc__qualitytable{table-layout:fixed !important;width:100% !important}
html body #main .nh-lye-calc__qualitytable tr > :nth-child(1){width:112px !important}
html body #main .nh-lye-calc__qualitytable tr > :nth-child(2){width:66px !important}
html body #main .nh-lye-calc__qualitytable tr > :nth-child(3){width:36px !important;padding-right:0 !important;overflow:visible !important}
html body #main .nh-lye-calc__qualitytable .nh-lye-calc__barcell{padding-left:8px !important;text-align:left !important}
    /* Your Recipe numbers sit right next to their bars (Carrie, Nov 4). */
html body #main .nh-lye-calc__qualitytable tbody tr > td:nth-child(3){text-align:right !important}
    /* "Your Recipe" heading starts where the numbers start and runs over the bars (Carrie, Nov 4). */
html body #main .nh-lye-calc__qualitytable thead th:nth-child(3){text-align:left !important;padding-left:24px !important;padding-right:0 !important}
html body #main .nh-lye-calc__qualitytable .nh-lye-calc__bar{width:100% !important;margin:0 !important}
    /* Accessibility (Nov 4 check): the trademark note under Nurture Match results was 4.17:1; now 5.3:1. */
html body #main #nfd-target p > small{color:#6b6b6b !important}
  }
/* Lye summary on phones (Carrie, Nov 4): one Save as PDF / Print area only. The top toolbar (with print options and links)
     stays; the repeat after the notes box is hidden, and the notes box gets its full 24px bottom padding back. */
  @media (max-width: 767px) {
html body #main .nh-lye-calc__toolbar:has(#nh-lye-pdf-btn2){display:none !important}
html body #main .nh-lye-calc__notesbox.nh-bleed{padding-bottom:24px !important}
  }
/* Lye summary order on phones (Carrie, Nov 4): Recipe name, results tables, notes, then the one Save as PDF / Print area
     joined under the notes band, then the safety note. The script below moves the toolbar. */
  @media (max-width: 767px) {
html body #main .nh-lye-calc__notesbox.nh-bleed:has(+ .nh-lye-calc__toolbar #nh-lye-pdf-btn){padding-bottom:12px !important}
html body #main .nh-lye-calc__notesbox + .nh-lye-calc__toolbar:has(#nh-lye-pdf-btn){margin-top:0 !important;padding-top:0 !important}
  }
/* Lye summary empty message ("Add oils to the recipe list…") on phones (Carrie, Nov 4): 12px above and below. */
  @media (max-width: 767px) {
html body #main #nh-lye-results-empty.nh-lye-calc__empty{padding:0 !important;margin:-12px 0 12px !important}
  }
/* Phones (Carrie, Nov 4): (1) no "Helpful guides" / "Helpful links" sidebar box on tool pages; (2) the Lye safety note
     between the PDF/Print band and Next steps gets 12px above and below, like the other short notes. */
  @media (max-width: 767px) {
html body #main .tp-side .tp-box:has(ul.tp-links){display:none !important}
html body #main .nh-lye-calc__toolbar:has(#nh-lye-pdf-btn){margin-bottom:12px !important}
html body #main .nh-lye-calc__note:has(~ #nh-lye-next){margin:12px 0 !important}
html body #main .nh-lye-calc__note ~ #nh-lye-next{margin-top:12px !important}
  }
@media (max-width: 767px) {
html body #main #nh-lye-savebox .nh-sb-lbl{flex:1 1 100%;margin:0 0 -4px;font:700 14px/1.3 'Roboto Condensed',sans-serif;color:#3b755f}
  }
/* Soap Cost Calculator on phones (Carrie, Nov 4): no gray divider lines. Ingredients are 24px apart (12 + 12 padding),
     the toggles (More options, See the breakdown, Buy these from Nurture) sit 24px apart, and the print band has no rules.
     Table row lines are left for the table clean-up. */
  @media (max-width: 767px) {
html body #main #nh-cost #nhc-list, html body #main #nh-cost #nhc-list > .nh-cost__line{border-top:0 !important;border-bottom:0 !important}
html body #main #nh-cost :is(#nhc-more, #nhc-bd, #nhc-shopbox, #nhc-p2){border-top:0 !important}
html body #main #nh-cost :is(#nhc-more, #nhc-bd, #nhc-shopbox) > summary{padding-top:12px !important;padding-bottom:12px !important}
html body #main #nh-cost #nhc-more{margin-top:12px !important}
html body #main #nh-cost #nhc-p2 > summary{padding-top:0 !important}
html body #main #nh-cost .nh-cost__printbar{border-top:0 !important;border-bottom:0 !important}
html body #main #nh-cost .nh-cost__printactions{border-top:0 !important;padding-top:0 !important;margin-top:24px !important}
html body #main #nh-cost :is(.nh-cost__card, #nhc-out){box-shadow:none !important}
html body #main #nh-cost #nhc-out{padding-top:0 !important}
html body #main #nh-cost .nh-cost__card:has(#nhc-p2){padding-top:0 !important}
  }
/* Soap Cost Calculator on phones, review pass (Carrie, Nov 4). */
  @media (max-width: 767px) {
    /* Price you paid: three equal boxes labelled Price ($) / Size / Unit. */
html body #main #nh-cost .nh-cost__price:has(> .nh-cost__f){display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:8px 12px !important}
html body #main #nh-cost .nh-cost__price > .nh-cost__f{flex:none !important;min-width:0 !important}
html body #main #nh-cost .nh-cost__price > .nh-cost__link--end{grid-column:auto / span 3 !important;justify-self:start !important;line-height:1.4 !important}
    /* "Needs a price": a note, not a link. */
html body #main #nh-cost .nh-cost__amt.nh-needs{color:#96382a !important;font-weight:400 !important;font-size:14px !important}
    /* Cost tiles: Cost per bar full width, Wholesale and Retail side by side. */
html body #main #nh-cost .nh-cost__sum{grid-template-columns:1fr 1fr !important;gap:12px !important}
html body #main #nh-cost .nh-cost__sum > .nh-cost__tile:first-child{grid-column:1 / -1 !important}
    /* Unit menus wide enough for "tsp per lb of oils". */
html body #main #nh-cost .nh-cost__line-main > .nh-cost__f--sm:has(select[data-k="au"]){flex:1 1 170px !important}
    /* Add buttons: solid green, no "+". */
html body #main #nh-cost .nh-cost__add{background:#3b755f !important;color:#fff !important;border:0 !important;border-radius:6px !important;font-family:'Roboto Condensed',sans-serif !important;font-weight:700 !important;min-height:44px !important;padding:10px 18px !important}
    /* Tables: full-width rows, no lines, alternating colors, headings on one line. */
html body #main #nh-cost :is(#nhc-bd, #nhc-shopbox) table{width:calc(100% + 40px) !important;max-width:none !important;margin:0 -20px 12px !important;border:0 !important}
html body #main #nh-cost :is(#nhc-bd, #nhc-shopbox) :is(th, td){border:0 !important;padding-top:10px !important;padding-bottom:10px !important}
html body #main #nh-cost :is(#nhc-bd, #nhc-shopbox) tr > :first-child{padding-left:20px !important}
html body #main #nh-cost :is(#nhc-bd, #nhc-shopbox) tr > :last-child{padding-right:20px !important}
html body #main #nh-cost :is(#nhc-bd, #nhc-shopbox) thead th{white-space:nowrap !important}
html body #main #nh-cost :is(#nhc-bd, #nhc-shopbox) tbody tr:nth-child(odd){background:#eff5f1 !important}
html body #main #nh-cost :is(#nhc-bd, #nhc-shopbox) tfoot tr{background:#d5e8dc !important}
html body #main #nh-cost :is(#nhc-bd, #nhc-shopbox) tfoot td{color:#23493a !important}
html body #main #nh-cost :is(#nhc-bd, #nhc-shopbox) td .nh-cost__hint{color:#555 !important}
    /* Print band: Print full width, "Start a new batch" as a quiet link under it. */
html body #main #nh-cost .nh-cost__printbtns{display:flex !important;flex-direction:column-reverse !important;align-items:stretch !important;gap:12px !important;margin:0 !important;width:100% !important}
html body #main #nh-cost .nh-cost__printbtns #nhc-print{width:100% !important}
html body #main #nh-cost .nh-cost__printbtns #nhc-reset{background:none !important;border:0 !important;min-height:0 !important;padding:4px 0 !important;align-self:center !important;color:#3b755f !important;text-decoration:underline !important;font-weight:700 !important;font-size:15px !important}
html body #main #nh-cost .nh-cost__printactions{row-gap:24px !important}
    /* Next steps moved to the end, after the note. */
html body #main #nh-cost .nh-cost__note:has(+ #nhc-next){margin-top:12px !important;margin-bottom:0 !important}
html body #main #nh-cost .nh-cost__note + #nhc-next{margin-top:12px !important}
  }
/* Soap Cost on phones (Carrie, Nov 4): no gray line above "See a problem or have an idea?" since the Next steps band
     above is shaded; the band and the feedback text are 24px apart. */
  @media (max-width: 767px) {
html body #main .tp-tool:has(#nh-cost) > .tp-feedback{border-top:0 !important;padding-top:0 !important}
  }
/* Soap Cost on phones (Carrie, Nov 4): "See the breakdown", "Buy these from Nurture" and "What should I charge?" evenly
     spaced now that Next steps moved to the end. Open shopping list: 24px from the cart button to "What should I charge?". */
  @media (max-width: 767px) {
html body #main #nh-cost #nhc-out{padding-bottom:12px !important}
html body #main #nh-cost #nhc-msg:empty{display:none !important}
html body #main #nh-cost #nhc-cart{margin-bottom:12px !important}
  }
/* Tool pages on phones (Carrie, Nov 4): the green "go to another tool" boxes in the side column are removed (Soap Cost,
     Browning Preview, Find Your Nurture Match, Ingredient List Maker, Measurement Converter, Mold Calculator, Oil Swap Helper,
     Photo Palette Matcher, Soap Claim Checker, Listing Writer). Next steps and More tools already link those tools.
     The Blend Builder's "Need ideas?" (101 fragrance blends) box is removed too (Carrie, Nov 4). */
  @media (max-width: 767px) {
html body #main .tp-side > .tp-box--green{display:none !important}
  }
/* Fragrance Blend Builder on phones, review pass (Carrie, Nov 4). */
  @media (max-width: 767px) {
    /* Fragrance rows: name on its own full-width line; amount, share and remove underneath. Rows 24px apart. */
html body #main #nh-blend .nh-blend__rows{gap:24px !important}
html body #main #nh-blend .nh-blend__row{grid-template-columns:minmax(0,1fr) 64px 48px !important;row-gap:8px !important}
html body #main #nh-blend .nh-blend__row > .nh-blend__wrap{grid-column:1 / -1 !important}
    /* Add a fragrance: solid green, no "+"; Start a new blend: a text link beside it. */
html body #main #nh-blend .nh-blend__acts{align-items:center !important;gap:12px !important}
html body #main #nh-blend #nhb-add{background:#3b755f !important;color:#fff !important;border:0 !important;font-family:'Roboto Condensed',sans-serif !important}
html body #main #nh-blend #nhb-new{background:none !important;border:0 !important;min-height:0 !important;padding:4px 0 !important;margin-left:auto !important;color:#3b755f !important;text-decoration:underline !important;font-size:15px !important}
html body #main #nh-blend #nhb-add[hidden] + #nhb-new{margin-left:0 !important}
    /* No gray lines between the steps; 24px between them. */
html body #main #nh-blend .nh-blend__card{box-shadow:none !important}
html body #main #nh-blend .nh-blend__card + .nh-blend__card{padding-top:0 !important}
html body #main .tp-tool:has(#nh-blend) > .tp-feedback{border-top:0 !important;padding-top:0 !important}
    /* Warning icon sits in the text line instead of over the edge. */
html body #main #nh-blend .nh-blend__msg--warn::before{position:static !important;display:inline-block !important;vertical-align:-3px !important;margin-right:6px !important}
    /* Tables: full-width rows, no lines, alternating colors, total row deeper. */
html body #main #nh-blend .nh-blend__table{width:calc(100% + 40px) !important;max-width:none !important;margin:8px -20px 0 !important}
html body #main #nh-blend .nh-blend__table :is(th, td){border:0 !important;padding-top:10px !important;padding-bottom:10px !important;white-space:nowrap}
html body #main #nh-blend .nh-blend__table td:first-child{white-space:normal !important}
html body #main #nh-blend .nh-blend__table tr > :first-child{padding-left:20px !important}
html body #main #nh-blend .nh-blend__table tr > :last-child{padding-right:20px !important}
html body #main #nh-blend .nh-blend__table tbody tr:nth-child(odd){background:#eff5f1 !important}
html body #main #nh-blend #nhb-amounts .nh-blend__table tbody tr:last-child{background:#d5e8dc !important}
html body #main #nh-blend #nhb-amounts .nh-blend__table tbody tr:last-child td{color:#23493a !important}
    /* Browning and acceleration: a simple full-width list instead of pills. */
html body #main #nh-blend #nhb-brown .nh-blend__facts{display:block !important;margin:8px -20px 0 !important}
html body #main #nh-blend #nhb-brown .nh-blend__facts li{display:block !important;border-radius:0 !important;background:none !important;padding:10px 20px !important}
html body #main #nh-blend #nhb-brown .nh-blend__facts li:nth-child(odd){background:#eff5f1 !important}
    /* Batch amounts: Weight of oils and Unit side by side. */
html body #main #nh-blend #nhb-amounts-card .nh-blend__grid{grid-template-columns:1fr 1fr !important;gap:24px 12px !important}
    /* 24px rhythm: buttons to "What are you making?", and Scent notes to step 3. */
html body #main #nh-blend .nh-blend__card:first-child > .nh-blend__grid{margin-top:24px !important}
html body #main #nh-blend #nhb-notes > :last-child{margin-bottom:0 !important}
    /* Step 2 sub-headings: 24px above (from the section before), 16px to their content. */
html body #main #nh-blend #nhb-results > h3{margin:24px 0 16px !important}
html body #main #nh-blend #nhb-results > h3 + div > :first-child{margin-top:0 !important}
  }
/* Blend Builder on phones (Carrie, Nov 4): the PureScent note is styled like "See a problem or have an idea?": no band,
     a green outline icon on the left, the bold green "PureScent+ blend" as its title and the text under it.
     Check icon when the whole blend is PureScent/PureScent+, an info icon otherwise. Kept out of the auto-bleed.
     It is moved up into step 1, under the fragrance rows and "Add a fragrance", above "What are you making?",
     on a full-width light green band (12px inside) now that it no longer sits under the striped table (Carrie, Nov 4). */
  @media (max-width: 767px) {
html body #main #nh-blend .nh-ps-holder{margin-top:24px}
    /* Text-to-edge 13px inside the band top and bottom; 24px from the band to the "What are you making?" text. */
html body #main #nh-blend .nh-ps-holder:not(:empty) + .nh-blend__msg + .nh-blend__grid, html body #main #nh-blend .nh-ps-holder:not(:empty) ~ .nh-blend__grid{margin-top:22px !important}
html body #main #nh-blend .nh-ps-holder:empty, html body #main #nh-blend:has(#nhb-results[hidden]) .nh-ps-holder{display:none !important}
html body #main #nh-blend .nh-blend__ps{position:relative !important;margin:0 -20px !important;padding:12px 20px 10px 54px !important;background:#e3eee9 !important;border:0 !important;border-radius:0 !important;font-size:15px !important;line-height:1.5 !important;color:#444 !important}
html body #main #nh-blend .nh-blend__ps > b:first-child{display:block !important;margin-bottom:4px !important;font:700 15px/1.4 'Roboto Condensed',sans-serif !important;color:#3b755f !important}
html body #main #nh-blend .nh-blend__ps::before{content:"";position:absolute;left:20px;top:12px;width:22px;height:22px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233b755f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 8h.01M11 12h1v4h1'/%3E%3C/svg%3E") no-repeat center/contain}
html body #main #nh-blend .nh-blend__ps.nh-ps-yes::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233b755f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M8.5 12.2l2.4 2.4 4.6-4.8'/%3E%3C/svg%3E")}
  }
/* Blend Builder on phones (Carrie, Nov 4): amount box narrower with the % share right beside it; Light / Medium / Strong
     as three equal tiles (not pills), like the Soap Cost tiles. */
  @media (max-width: 767px) {
html body #main #nh-blend .nh-blend__row{grid-template-columns:96px minmax(0,1fr) 48px !important;column-gap:12px !important}
html body #main #nh-blend .nh-blend__row > .nh-blend__share{text-align:left !important}
html body #main #nh-blend #nhb-max .nh-blend__facts{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:8px !important}
html body #main #nh-blend #nhb-max .nh-blend__facts li{border-radius:8px !important;padding:10px 4px !important;text-align:center !important}
  }
  /* "Quick check that you're a person" box on phones: dim the page behind it so it reads as the one thing to do. */
  @media (max-width: 767px) {
html body #nh-pass-wrap{box-shadow:0 0 0 100vmax rgba(0,0,0,.35), 0 12px 40px rgba(0,0,0,.25) !important}
  }
/* Blend Builder Percent mode on phones (Carrie, Nov 4): the "adds up to 93.3%, not 100%" note in step 1 gets the same
     warning icon as the other amber notes and 24px around it (the fragrance rows now sit 24px above the
     Add a fragrance button in both modes, was 10); in step 2 the warning sits 24px above the safe max. */
  @media (max-width: 767px) {
html body #main #nh-blend .nh-blend__rows{margin-bottom:24px !important}
html body #main #nh-blend #nhb-total.is-off{margin:0 0 24px !important;padding-top:12px !important;padding-bottom:10px !important}
html body #main #nh-blend #nhb-total.is-off::before{content:"";display:inline-block;width:18px;height:18px;margin-right:6px;vertical-align:-3px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10 2.2 1.3 17.3a.9.9 0 0 0 .8 1.3h15.8a.9.9 0 0 0 .8-1.3z' fill='%23f0a53a'/%3E%3Cpath d='M10 7.2v5.2' stroke='%23fff' stroke-width='2' stroke-linecap='round'/%3E%3Ccircle cx='10' cy='15.2' r='1.15' fill='%23fff'/%3E%3C/svg%3E") no-repeat center/contain}
html body #main #nh-blend #nhb-max > .nh-blend__msg--warn:first-child + .nh-blend__eyebrow{margin-top:24px !important}
  }
/* Color Blender on phones, review pass (Carrie, Nov 4). */
  @media (max-width: 767px) {
    /* No dark divider lines above the shades and the products; 24px instead. */
html body #main #nh-cb-blend, html body #main #nh-cb-products{border-top:0 !important;padding-top:0 !important;margin-top:24px !important}
    /* "Your shades" heading, caption under it, swatch labels easier to read. */
html body #main #nh-cb-blend .nh-cb-h{margin:0 0 8px !important;font:700 15px/1.3 'Roboto Condensed',sans-serif !important;text-transform:uppercase !important;letter-spacing:.05em !important;color:#3b755f !important}
html body #main #nh-cb-blend .nh-color-blend__blend-caption{text-align:left !important;font-size:14px !important;line-height:1.45 !important;color:#555 !important;margin:0 0 16px !important}
html body #main #nh-cb-blend .nh-color-blend__blend-label{font-size:15px !important;font-weight:700 !important;color:#444 !important;letter-spacing:0 !important}
    /* Product cards side by side with smaller photos. */
html body #main #nh-cb-products-row{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:12px !important}
html body #main #nh-cb-products-row:has(> .nh-color-blend__product-card:only-child){grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important}
html body #main #nh-cb-products .nh-color-blend__product-card{gap:8px !important;min-width:0 !important}
html body #main #nh-cb-products .nh-color-blend__product-title{font-size:15px !important;line-height:1.3 !important}
html body #main #nh-cb-products .nh-color-blend__product-card .button{min-height:44px !important;padding:10px 8px !important;font-size:15px !important;margin-top:auto !important}
    /* No gray line above "See a problem or have an idea?". */
html body #main .tp-tool:has(#nh-cb-blend) > .tp-feedback{border-top:0 !important;padding-top:0 !important}
  }
/* Next steps under Good to know on phones (Carrie, Nov 4): Color Blender, Lye, Fragrance and Mold Calculators.
     Good to know helps while using the tool; Next steps is the last thing before the feedback note. */
  @media (max-width: 767px) {
html body #main .tp-good + .nh-next:not([hidden]){margin-top:24px !important}
html body #main .tp-good + #nh-lye-next.nh-next{margin-top:24px !important}
html body #main .nh-next.nh-next-off{display:none !important}
  }
/* Good to know on phones (Carrie, Nov 4): no gray line above it (the lines between its questions stay). */
  @media (max-width: 767px) {
html body #main .tp-tool .tp-good{border-top:0 !important;padding-top:0 !important}
  }
/* All tool pages on phones (Carrie, Nov 4, from the automatic phone check): the same clean-up as Soap Cost, Blend Builder
     and Color Blender everywhere. */
  @media (max-width: 767px) {
    /* No gray line above "See a problem or have an idea?". */
html body #main .tp-tool > .tp-feedback{border-top:0 !important;padding-top:0 !important}
    /* No gray line along the bottom of the tool cards or between sections. */
html body #main .tp-tool .tp-bleed--line{box-shadow:none !important}
html body #main .tp-tool :is(.nh-lab__sec, .nh-lw__sec){border-top:0 !important}
html body #main .tp-tool .nh-swap__row{border-bottom:0 !important}
html body #main .tp-tool :is(.nh-lab__line, #nhl-why){border-top:0 !important}
html body #main .tp-tool .nh-swap__opt{border-top:0 !important;border-bottom:0 !important}
    /* With the line gone, the next card starts 24px after the last one's content (not 48). */
html body #main .tp-tool .tp-bleed--line ~ .tp-bleed{padding-top:0 !important}
html body #main .tp-tool .nh-swap__card > .nh-swap__grid:has(+ .nh-swap__check[hidden]), html body #main .tp-tool .nh-swap__card > .nh-swap__grid:last-child{margin-bottom:0 !important}
html body #main .tp-tool details.nh-props{border-top:0 !important;border-bottom:0 !important}
    /* Add buttons: solid green, no "+" (label fixed by the script below). */
html body #main .tp-tool .nh-cost__add, html body #main .tp-tool .nh-swap__add{background:#3b755f !important;color:#fff !important;border:0 !important;border-radius:6px !important;font-family:'Roboto Condensed',sans-serif !important;font-weight:700 !important;min-height:44px !important;padding:10px 18px !important}
    /* Tables: full-width rows, no lines, alternating colors, headings on one line. */
html body #main .tp-tool :is(#nhl-why, details.nh-props) table{width:calc(100% + 40px) !important;max-width:none !important;margin-left:-20px !important;margin-right:-20px !important;border:0 !important;border-collapse:collapse !important}
html body #main .tp-tool :is(#nhl-why, details.nh-props) :is(th, td){border:0 !important;padding-top:10px !important;padding-bottom:10px !important}
html body #main .tp-tool :is(#nhl-why, details.nh-props) tr > :first-child{padding-left:20px !important}
html body #main .tp-tool :is(#nhl-why, details.nh-props) tr > :last-child{padding-right:20px !important}
html body #main .tp-tool :is(#nhl-why, details.nh-props) thead th{white-space:nowrap !important}
html body #main .tp-tool :is(#nhl-why, details.nh-props) tbody tr:nth-child(odd){background:#eff5f1 !important}
  }
/* Fields wide enough to read on phones (Carrie, Nov 4).
     Ingredient List Maker: the ingredient name gets its own full-width line (with the remove ×), amount and unit below it.
     Browning Preview: the color name column takes the room left by narrower Fresh / After curing bars. */
  @media (max-width: 767px) {
html body #main .tp-tool .nh-lab__line:has(> .nh-cost__x){grid-template-columns:minmax(0,1fr) minmax(0,1fr) 30px !important;row-gap:8px !important;column-gap:12px !important}
html body #main .tp-tool .nh-lab__line:has(> .nh-cost__x) > .nh-cost__f:first-child{grid-column:1 / 3 !important;grid-row:1 !important}
html body #main .tp-tool .nh-lab__line:has(> .nh-cost__x) > .nh-cost__x{grid-column:3 !important;grid-row:1 !important;align-self:end !important;height:44px !important}
html body #main .tp-tool .nh-cost__start > .nh-cost__f{flex:1 1 100% !important;width:100% !important}
html body #main .tp-tool :is(.nh-br__pair, .nh-br__pairhead){grid-template-columns:minmax(0,1fr) 56px 56px !important;column-gap:8px !important}
html body #main .tp-tool .nh-br__pairhead > *{white-space:nowrap !important}
  }
/* Ingredient List Maker on phones, review pass (Carrie, Nov 4): 24px rhythm between questions, ingredients and sections,
     16px from headings, "Start a new recipe" as a text link beside Copy the list. */
  @media (max-width: 767px) {
html body #main .nh-lab #nhl-start-msg{margin-bottom:12px !important}
html body #main .nh-lab #nhl-saved-wrap{margin-top:0 !important}
html body #main .nh-lab .nh-cost__start + .nh-cost__row, html body #main .nh-lab .nh-cost__row + #nhl-list{margin-top:24px !important}
html body #main .nh-lab .nh-lab__sec{padding:0 !important;margin:0 !important}
html body #main .nh-lab .nh-lab__sec + .nh-lab__sec{margin-top:24px !important}
html body #main .nh-lab .nh-lab__sechead{margin-bottom:16px !important}
html body #main .nh-lab .nh-lab__line{padding:0 !important;margin:0 !important}
html body #main .nh-lab .nh-lab__line + .nh-lab__line{margin-top:24px !important}
html body #main .nh-lab .nh-lab__sec > .nh-cost__add{margin:24px 0 0 !important}
html body #main .nh-lab .nh-cost__card > h2 + .nh-cost__radios{margin-top:16px !important}
html body #main .nh-lab #nhl-out{margin-top:24px !important}
html body #main .nh-lab .nh-lab__copyrow{margin-top:24px !important;align-items:center !important;column-gap:12px !important}
html body #main .nh-lab #nhl-copy{margin:0 !important}
html body #main .nh-lab #nhl-reset{background:none !important;border:0 !important;min-height:0 !important;padding:4px 0 !important;margin:0 0 0 auto !important;color:#3b755f !important;text-decoration:underline !important;font-size:15px !important;font-weight:700 !important}
html body #main .nh-lab .nh-lab__copyrow + #nhl-why{margin-top:12px !important}
html body #main .nh-lab #nhl-why + .nh-cost__note{margin-top:6px !important}
html body #main .nh-lab .nh-cost__start{row-gap:0 !important}
html body #main .nh-lab .nh-cost__radios{margin-bottom:0 !important}
html body #main .nh-lab .nh-cost__radios + .nh-cost__row{margin:0 !important}
  }
/* Product pages on phones, review pass (Carrie, Nov 4). */
  @media (max-width: 767px) {
    /* No gray lines: above Size, above the rewards line, above the Blends well with / Matching colors tabs. */
html body #main .shopify-section--main-product hr.product-info__separator{display:none !important}
html body #main .shopify-section--main-product .product-info [class*="slp_"]{border-color:transparent !important}
    /* Rewards line ("Sign in or join"): a full-width light green band, 12px inside (Carrie, Nov 4). */
html body #main .shopify-section--main-product .product-info [class*="slp_"]:not([class*="slp_"] [class*="slp_"]){margin:0 -20px !important;padding:12px 20px !important;background:#f3f7f5 !important;border:0 !important;border-radius:0 !important;width:auto !important;max-width:none !important}
    /* Inside the band: icon lined up with the page edge (20px), centered beside the text, 12px above and below the text. */
html body #main .product-info [class*="slp_"]:not([class*="slp_"] [class*="slp_"]) > [class*="slp_"]{padding:0 !important;margin:0 !important;display:flex !important;align-items:center !important;gap:12px !important}
html body #main .product-info [class*="slp_"]:not([class*="slp_"] [class*="slp_"]) > [class*="slp_"] > [class*="slp_"]:first-child{width:36px !important;height:36px !important;min-width:36px !important;border-radius:8px !important;background:#fff !important;margin:0 !important;display:flex !important;align-items:center !important;justify-content:center !important}
html body #main .product-info [class*="slp_"]:not([class*="slp_"] [class*="slp_"]) p{font-size:14px !important;line-height:1.4 !important;color:#444 !important;margin:0 !important}
html body #main .cp__tabs{border-top:0 !important}
    /* Breadcrumbs sit 12px above the product photo (was 32). */
html body #main .shopify-section--main-product > .section{padding-top:2px !important}
html body #main .fd-card--soft.nh-bleed{border-top:0 !important;border-bottom:0 !important}
    /* No gray line under the Overview / Soap test / Where to use it / Specs tabs, or across the full-width cards under the
       tab headings (like Where to use it's IFRA card) (Carrie, Nov 4). */
html body #main .sct.fd .fd-nav__in{background-image:none !important}
html body #main .sct.fd .fd-card.nh-bleed:not(.fd-card--soft):not(.fd-card--warn){border-top:0 !important;border-bottom:0 !important}
    /* Bands 24px inside (Carrie, Nov 4): Scent profile; and the Blends well with band - 24px from "Read more about scent
       families" to Why Nurture?, 24px from Why Nurture? to the band's end. */
html body #main .fd-card--soft.nh-bleed{padding-top:22px !important;padding-bottom:24px !important} /* 22 + the heading's line height = 24px to the text, matching 24px under the button */
html body #main .product-info__block-item:has(.cp__tabs) .cp{padding-bottom:21px !important}
html body #main .product-info__liquid:has(> details.wn){padding-bottom:24px !important}
html body #main .shopify-section--main-product .product-info .nh-scent{border-top:0 !important;padding-top:0 !important}
    /* Scent family and its line show once, near the top; not again in the Scent profile. */
html body #main #nh-overview .nh-scent__vibe{display:none !important}
    /* No text under 13px. */
html body #main :is(.breadcrumbs__item, .breadcrumbs__item a, .breadcrumbs__item span),
html body #main .nh-scent__row dt, html body #main .product-card__subheading, html body #main .product-card__badge-list .badge,
html body #main .cp__scent-fam, html body #main .nh-cp__k, html body #main .rating-with-text .text-sm, html body #main .cp__name, html body #main .shopify-section--main-product small{font-size:13px !important}
    /* "Free help and tools" cards look like the Next steps cards on the tools. */
html body #get-help .nh-help__card{position:relative !important;padding:12px 44px 12px 12px !important;border:1px solid rgba(59,117,95,.15) !important;border-radius:6px !important;box-shadow:none !important;text-decoration:none !important}
html body #get-help .nh-help__card::after{content:"";position:absolute;right:18px;top:50%;width:9px;height:9px;border-top:2.5px solid #3b755f;border-right:2.5px solid #3b755f;transform:translateY(-50%) rotate(45deg)}
html body #get-help .nh-help__card:active{background:#eaf3ee !important}
html body #get-help .nh-help__icon{width:36px !important;height:36px !important;border-radius:8px !important;background:#e3eee9 !important;color:#3b755f !important;font-size:20px !important}
html body #get-help .nh-help__icon i{font-size:20px !important;width:20px !important;height:20px !important;color:#3b755f !important}
html body #get-help .nh-help__label{font:700 16px/1.35 'Roboto Condensed',sans-serif !important;text-transform:none !important;letter-spacing:0 !important;color:#3b755f !important}
html body #get-help .nh-help__text{font-size:14px !important;line-height:1.4 !important;color:#555 !important}
html body #get-help .nh-help__grid{gap:8px !important}
    /* The Add to cart bar is on from the start; leave room for it at the bottom of the page. */
html body:has(.nh-satc.is-on){padding-bottom:72px !important}
  }
/* Product page tabs on phones (Carrie, Nov 4): both sets of tabs look and space the same, the tighter way.
     Blends well with / Matching colors: pills sized to their words, 4px apart, lined up with the page edge (20px), 40px tall,
     like Overview / Soap test / Where to use it / Specs. Under the tabs: 24px to what they show, on both (Carrie, Nov 4). */
  @media (max-width: 767px) {
html body #main .product-info > .product-info__block-item:has(~ [data-block-type="payment-terms"]){margin-bottom:0 !important}
html body #main .product-info > .product-info__block-item:not([data-block-type="title"]):has(~ [data-block-type="payment-terms"]){margin-top:0 !important} /* empty blocks (e.g. a one-size variant picker) add no space; visible ones get their 12px from the rhythm script */
html body #main .product-info > .product-info__block-item[data-block-type="title"]{margin-top:10px !important} /* thumbnails to title: 24 (Carrie, Nov 4) */
    /* Judge.me reviews on phones (Carrie, Nov 4): our heading, green bars, no keyword chips, link-style "Ask a question",
       green pill tabs, no gray lines, fields like ours, 24px rhythm. */
html body #main .jdgm-review-widget .jm-review-widget{padding-top:24px !important;padding-bottom:24px !important}
html body #main .jdgm-review-widget :is(.jm-review-widget-header__summary-section, .jm-review-widget-header__title-and-rating){justify-content:flex-start !important;width:100% !important;max-width:none !important;margin-left:0 !important;margin-right:0 !important}
html body #main .jdgm-review-widget .jm-review-widget-header__title-and-rating{align-items:flex-start !important;text-align:left !important}
html body #main .jdgm-review-widget .jm-review-widget-header__title{font-family:Anton,sans-serif !important;font-size:24px !important;line-height:1.2 !important;letter-spacing:-0.01em !important;text-transform:uppercase !important;font-weight:400 !important;text-align:left !important;color:#444 !important}
html body #main .jdgm-review-widget .jm-review-widget-header__average-rating-display{justify-content:flex-start !important;margin-top:16px !important}
html body #main .jdgm-review-widget .jm-average-rating-display{margin-bottom:0 !important}
html body #main .jdgm-review-widget .jm-review-widget-header__main-content{margin-top:24px !important}
html body #main .jdgm-review-widget .jm-progress-bar{background:#eff5f1 !important}
html body #main .jdgm-review-widget .jm-progress-bar__fill{background:#3b755f !important}
html body #main .jdgm-review-widget .jm-center:has(> .jm-keyword-list){display:none !important}
html body #main .jdgm-review-widget .jm-button{border-radius:6px !important;font-family:'Roboto Condensed',sans-serif !important;font-weight:700 !important}
html body #main .jdgm-review-widget .jm-action-buttons__button.jm-button--secondary{background:none !important;border:0 !important;box-shadow:none !important;color:#3b755f !important;text-decoration:underline !important;width:auto !important;min-height:0 !important;padding:4px 0 !important;margin:12px auto 0 !important;align-self:center !important;display:block !important;font-size:15px !important}
html body #main .jdgm-review-widget .jdgm-tablist__list{border:0 !important;box-shadow:none !important;gap:4px !important;justify-content:flex-start !important}
html body #main .jdgm-review-widget .jdgm-tablist__activeBar{display:none !important}
html body #main .jdgm-review-widget :is(.jdgm-tablist__list, .jdgm-tablist__viewport){height:auto !important;min-height:42px !important;align-items:center !important} /* pill tabs not clipped at the bottom (Carrie, Nov 4) */
html body #main .jdgm-review-widget .jdgm-tab{flex:none !important;width:auto !important;height:40px !important;padding:0 10px !important;border:0 !important;border-radius:999px !important;background:transparent !important;color:#444 !important;font-family:'Roboto Condensed',sans-serif !important;font-size:14px !important;font-weight:700 !important}
html body #main .jdgm-review-widget .jdgm-tab.jdgm-tab--active{background:#3b755f !important;color:#fff !important}
html body #main .jdgm-review-widget :is(.jm-search-filter__toggle, .jm-custom-answer-filter, .jm-sort-filter__select){border:1px solid rgba(68,68,68,.12) !important;border-radius:6px !important;min-height:42px !important}
html body #main .jdgm-review-widget .jm-review-item{border-bottom:0 !important;padding-bottom:17px !important} /* 24px from the Helpful icons to the line (they sit 7px inside their buttons) */
    /* Product cards (Carrie, Nov 4): 12px text inset left and right. */
html body #main .product-card:not(.wishlist-page__card) > .product-card__info{padding-left:12px !important;padding-right:12px !important}
html body #main .jdgm-review-widget .jdgm-review-list > *{margin-top:0 !important}
html body #main .jdgm-review-widget .jdgm-review-list > * + * .jm-review-item{border-top:1px solid rgba(68,68,68,.12) !important;padding-top:18px !important} /* stars sit ~5px inside their box: 24px visible */ /* line between reviews, 12px below it; none after the last */ /* thin lines between reviews: Carrie's exception, Nov 4 */
html body #main .jdgm-review-widget .jm-review-content__expand-button{color:#3b755f !important;font-weight:700 !important;text-decoration:underline !important}
html body #main .jdgm-review-widget .jm-verified-buyer-badge__text{font-size:13px !important}
html body #main .jdgm-review-widget .jm-average-rating-display p.jm-text:last-child:not(:first-child){font-size:14px !important} /* "646 reviews" was 12px */
html body #main .nh-docs.nh-docs--chips > .nh-docs__h{flex-basis:100% !important} /* Documents label always on its own line, like Approved for (Nov 4) */
html body #main .jdgm-review-widget .jm-review-collection-info{text-align:center !important;justify-content:center !important;margin:0 0 12px !important} /* 24px under the last review (its own bottom padding) */
html body #main .jdgm-review-widget .jm-review-collection-info + .jm-pagination-controls{margin-top:0 !important}
html body #main .product-info__block-item .cp .cp__tabs.cp__tabs{display:flex !important;gap:4px !important;padding:24px 20px 12px !important;margin-bottom:0 !important;background:transparent !important;justify-content:flex-start !important;grid-template-columns:none !important}
html body #main .product-info__block-item .cp .cp__tabs.cp__tabs ~ *{padding-top:0 !important}
html body #main .product-info__block-item .cp .cp__tabs.cp__tabs > .cp__tab{width:auto !important;flex:none !important;height:40px !important;padding:0 10px !important}
html body #main .product-info__block-item .cp .cp__tabs.cp__tabs > .cp__tab:not(.is-on):not([aria-selected="true"]){color:#444 !important}
html body #main .sct.fd .fd-part{padding-top:0 !important}
html body #main .sct.fd .fd-nav__in{padding-bottom:8px !important}
  }
/* Product pages on phones (Carrie, Nov 4): bands have the same space at the top and bottom, like the tools (24px).
     Free help and tools, Tested in cold process soap, Why Nurture? on its own, a mold's key facts, the full-width cards under
     the tab headings, and the soft cards (no extra margin under their last line). */
  @media (max-width: 767px) {
html body #get-help{padding-top:29px !important;padding-bottom:21px !important}
    /* One light green for every shaded band on product pages: #f3f7f5 (rewards line and Free help and tools now match). */
html body #main .section:has(> #get-help), html body #get-help{background:#f3f7f5 !important}
html body #main .fd-card--soft.nh-bleed :is(p,ul,ol,div):last-child{margin-bottom:0 !important;padding-bottom:0 !important}
html body #main .fd-card--soft.nh-bleed .metafield-rich_text_field > p:last-child{padding-bottom:12px !important} /* white Use rate cards keep even padding */
html body #main .product-info__block-item:not(:has(.cp)) + .product-info__block-item .product-info__liquid:has(> details.wn), html body #main .product-info__block-item:first-child .product-info__liquid:has(> details.wn){padding-top:24px !important}
html body #main .product-info__block-item.nh-wn-rw .product-info__liquid:has(> details.wn){padding-top:12px !important}
html body #main .product-info__liquid:has(> .nh-mk){padding-top:24px !important;padding-bottom:24px !important}
html body #main#main .fd-card.fd-card.nh-bleed:is(.nh-kv-card, :not(.fd-card--soft):not(.fd-card--warn):has(.nh-mt)){padding-top:22px !important;padding-bottom:21px !important}
html body #main#main .sct.fd .fd-card.fd-card.nh-bleed:not(.fd-card--soft):not(.fd-card--warn):not(.nh-kv-card):not(:has(.nh-mt)){padding-top:0 !important;padding-bottom:0 !important} /* plain white cards in the tabs: no extra space under the tab heading (Carrie, Nov 4) */
html body #main .sct.fd .fd-cols > .fd-card ~ .fd-card{margin-top:24px !important}
    /* Product tabs fit on one line (Carrie, Nov 4): "Reviews" tab hidden on phones (the reviews follow right below), tighter tabs. */
html body #main .sct.fd .fd-nav__in li:has(> a[href*="judgeme"]){display:none !important}
html body #main .sct.fd .fd-nav__in > ul{gap:4px !important;flex-wrap:wrap !important;overflow:visible !important;row-gap:8px !important} /* all tabs visible: wrap onto a second line when they don't fit (Carrie, Nov 4) */
html body #main :is(on-sale-badge, .badge--on-sale){font-size:13px !important} /* "Save 30%": 13px minimum */
html body #main .sct.fd .fd-nav:has(.fd-nav__in > ul > li:only-child), html body #main .sct.fd .fd-nav:has(.fd-nav__in > ul > li:first-child + li:last-child > a[href*="judgeme"]){display:none !important} /* a single tab is not needed */
html body #main .sct.fd .nh-mt caption span{font-size:13px !important}
html body #main .sct.fd:is(:has(.fd-nav__in > ul > li:only-child), :has(.fd-nav__in > ul > li:first-child + li:last-child > a[href*="judgeme"])) .fd-part{padding-top:12px !important} /* no tabs: 24px from the band above to the heading */
html body #main .sct.fd .fd-nav__in > ul :is(button, a){padding:0 8px !important}
    /* Blog posts tab (Carrie, Nov 4): compact rows like Next steps, small square photo, whole row tappable. */
html body #main .sct.fd ul.nh-blogs{gap:8px !important}
html body #main .sct.fd ul.nh-blogs li > a{grid-template-columns:72px minmax(0,1fr) 16px !important;grid-template-rows:auto !important;align-items:center !important;gap:12px !important;padding:8px 14px 8px 8px !important;border:1px solid rgba(0,0,0,.08) !important;border-radius:8px !important;background:#fff !important;min-height:88px !important;box-sizing:border-box !important}
html body #main .sct.fd ul.nh-blogs li > a > img{width:72px !important;height:72px !important;aspect-ratio:1 / 1 !important;object-fit:cover !important;border-radius:6px !important;grid-column:1 !important;grid-row:1 !important}
html body #main .sct.fd ul.nh-blogs li > a > span{padding:0 !important;grid-column:2 !important;grid-row:1 !important}
html body #main .sct.fd ul.nh-blogs li > a > span > b{font-size:15px !important;line-height:1.3 !important}
html body #main .sct.fd ul.nh-blogs li > a > span > small{display:none !important}
html body #main .sct.fd ul.nh-blogs li > a::after{content:"" !important;grid-column:3 !important;grid-row:1 !important;width:8px !important;height:8px !important;border-right:2px solid #3b755f !important;border-top:2px solid #3b755f !important;transform:rotate(45deg) !important;justify-self:center !important}
html body #main .sct.fd .fd-warn.nh-bleed{margin-top:24px !important;padding-top:12px !important;padding-bottom:12px !important} /* Prop 65 note: 24px above (matches below), 12px inside like other short notes (Nov 4) */
    /* Kit contents (Carrie, Nov 4): each group is one white card, heading and items together. */
html body #main .fd-card--soft .metafield-rich_text_field > p:has(+ ul){border-bottom:0 !important;border-radius:8px 8px 0 0 !important;padding:12px 14px 4px !important;margin:0 !important;font-weight:700 !important}
html body #main .fd-card--soft .metafield-rich_text_field > p + ul{background:#fff !important;border:1px solid rgba(0,0,0,.08) !important;border-top:0 !important;border-radius:0 0 8px 8px !important;padding:0 14px 12px !important;margin:0 0 8px !important;list-style:none !important}
html body #main .fd-card--soft .metafield-rich_text_field > p + ul:last-child{margin-bottom:0 !important;padding-bottom:12px !important}
html body #main .fd-card--soft .metafield-rich_text_field > p + ul > li{margin:0 !important;padding:2px 0 !important}
    /* Link cards like "View Instructions" match the Free help and Next steps cards (Carrie, Nov 4). */
html body #main .sct.fd .fd-prose p.nh-linkcard > a{grid-template-columns:36px minmax(0,1fr) 12px !important;justify-items:start !important;text-align:left !important;padding:12px 14px 12px 12px !important;border:1px solid rgba(59,117,95,.15) !important;border-radius:6px !important;font-size:16px !important;font-weight:700 !important}
html body #main .sct.fd .fd-prose p.nh-linkcard > a::after{justify-self:end !important}
html body #main .sct.fd .fd-prose p.nh-linkcard .nh-lc__i{width:36px !important;height:36px !important;border-radius:8px !important;background:#3b755f !important;color:#fff !important} /* solid green tile: link cards stand apart from the light green info rows (Carrie, Nov 4) */
html body #main .sct.fd .fd-prose p.nh-linkcard .nh-lc__i :is(svg, i){color:#fff !important}
html body #main .sct.fd .fd-prose p.nh-linkcard > a{color:#3b755f !important;background:#f3f7f5 !important;border-color:rgba(59,117,95,.2) !important} /* light green link cards, our standard link green (Carrie, Nov 4) */
html body #main .sct.fd .fd-prose p.nh-linkcard > a::after{border-color:#3b755f !important}
    /* Kit and other pages without color or scent cards: "Why Nurture?" joins the rewards band (Carrie, Nov 4). */
html body #main .shopify-section--main-product .product-info__block-item.nh-rw-wn [class*="slp_"]:not([class*="slp_"] [class*="slp_"]){padding-top:24px !important;padding-bottom:0 !important}
html body #main .product-info__block-item.nh-wn-rw{margin-top:0 !important}
html body #main .product-info__block-item.nh-gone{display:none !important}
html body #main .product-info__block-item.nh-rw-wn{margin-bottom:0 !important}
    /* "You may also like" (Carrie, Nov 4): compact rows like Blog posts (photo, name, rating, arrow), one row with a peek of
       the next, moved by swiping or the arrow buttons under it. */
html body #main .shopify-section--product-recommendations, html body #main .shopify-section--product-recommendations > .section{background:#f3f7f5 !important} /* light green band (Carrie, Nov 4) */
html body #main .shopify-section--product-recommendations > .section{padding-top:24px !important;padding-bottom:24px !important;margin-top:0 !important;margin-bottom:0 !important}
html body #main .shopify-section--product-recommendations product-list.product-list{grid-template-columns:none !important;grid-auto-flow:column !important;grid-auto-columns:calc(100vw - 88px) !important;column-gap:12px !important}
html body #main .shopify-section--product-recommendations product-card.product-card{display:grid !important;grid-template-columns:72px minmax(0,1fr) 12px !important;align-items:center !important;column-gap:12px !important;padding:8px 14px 8px 8px !important;background:#fff !important;border:1px solid rgba(0,0,0,.08) !important;border-radius:8px !important;min-height:88px !important;box-sizing:border-box !important}
html body #main .shopify-section--product-recommendations product-card.product-card > .product-card__badge-list{display:none !important}
html body #main .shopify-section--product-recommendations product-card.product-card > .product-card__figure{grid-column:1 !important;grid-row:1 !important;width:72px !important;height:72px !important;overflow:hidden !important;border-radius:6px !important;margin:0 !important}
html body #main .shopify-section--product-recommendations product-card.product-card > .product-card__figure img{width:72px !important;height:72px !important;object-fit:cover !important;aspect-ratio:1 / 1 !important}
html body #main .shopify-section--product-recommendations product-card.product-card > .product-card__figure img + img{display:none !important}
html body #main .shopify-section--product-recommendations product-card.product-card > .product-card__figure, html body #main .shopify-section--product-recommendations product-card.product-card > .product-card__figure :is(a, img){border:0 !important;box-shadow:none !important;outline:0 !important} /* no border around the photo (Carrie, Nov 4) */
html body #main .shopify-section--product-recommendations product-card.product-card > .product-card__info{grid-column:2 !important;grid-row:1 !important;padding:0 !important;text-align:left !important;background:none !important;display:flex !important;flex-direction:column !important;gap:2px !important;min-width:0 !important;overflow:hidden !important}
html body #main .shopify-section--product-recommendations product-card.product-card > .product-card__info > .product-card__subheading{order:2 !important;margin:0 !important} /* name first, category under it (Carrie, Nov 4) */
html body #main .shopify-section--product-recommendations product-card.product-card::after{content:"" !important;grid-column:3 !important;grid-row:1 !important;width:8px !important;height:8px !important;border-right:2px solid #3b755f !important;border-top:2px solid #3b755f !important;transform:rotate(45deg) !important;justify-self:center !important}
html body #main .shopify-section--product-recommendations .product-card__info .rating-with-text{display:flex !important;flex-direction:row !important;flex-wrap:nowrap !important;align-items:baseline !important;justify-content:flex-start !important;gap:6px !important}
html body #main .shopify-section--product-recommendations .product-card__info .rating-with-text > .rating{order:2 !important;flex:none !important} /* stars to the right of the name (Carrie, Nov 4) */
html body #main .shopify-section--product-recommendations .product-card__info .rating-with-text > .product-card__title{min-width:0 !important}
html body #main .shopify-section--product-recommendations .product-card__title{font-size:15px !important;line-height:1.3 !important}
    /* Every row the same height, so the photos line up (Carrie, Nov 4): category on one line, name at most two lines. */
html body #main .shopify-section--product-recommendations product-list.product-list{align-items:stretch !important}
html body #main .shopify-section--product-recommendations .product-card__subheading{white-space:nowrap !important;overflow:hidden !important;text-overflow:ellipsis !important;max-width:100% !important}
html body #main .shopify-section--product-recommendations .product-card__title a{display:-webkit-box !important;-webkit-line-clamp:2 !important;-webkit-box-orient:vertical !important;overflow:hidden !important}
html body #main .shopify-section--product-recommendations product-card.product-card{height:96px !important;min-height:0 !important} /* fixed height: the theme otherwise stretches these to the old card height */
html body #main .shopify-section--product-recommendations product-card.product-card{position:relative !important}
html body #main .shopify-section--product-recommendations .product-card__title a::before{content:"" !important;position:absolute !important;inset:0 !important;z-index:1 !important} /* whole row opens the product */
html body #main .shopify-section--product-recommendations .floating-controls-container{display:flex !important;flex-wrap:wrap !important;justify-content:center !important;gap:12px !important}
html body #main .shopify-section--product-recommendations .floating-controls-container > scroll-carousel{flex:0 0 100% !important;order:0 !important}
html body #main .shopify-section--product-recommendations .floating-controls-container button:is([is="prev-button"], [is="next-button"]){display:none !important} /* swipe only; the peek of the next row shows there is more (Carrie, Nov 4) */
html body #main#main .fd-card.fd-card--warn.nh-bleed{padding-top:22px !important;padding-bottom:23px !important} /* "Before you buy" band: 24px inside like other bands (Nov 4) */
    /* "About our blend" (oil blend page) as icon rows instead of white boxes (Carrie, Nov 4). */
html body #main .fd-card--soft .nh-rows > p.nh-row{display:grid !important;grid-template-columns:36px minmax(0,1fr) !important;column-gap:12px !important;row-gap:2px !important;align-items:start !important;background:none !important;border:0 !important;border-radius:0 !important;padding:0 !important;margin:0 0 20px !important}
html body #main .fd-card--soft .nh-rows > p.nh-row:last-child{margin-bottom:0 !important;padding-bottom:0 !important}
html body #main .fd-card--soft .nh-rows .nh-row__i{display:grid !important;place-items:center;grid-column:1;grid-row:1 / span 2;width:36px;height:36px;border-radius:8px;background:#fff;color:#3b755f;font-size:20px}
html body #main .fd-card--soft .nh-rows .nh-row__t{display:block !important;grid-column:2;grid-row:1;font-family:'Roboto Condensed',sans-serif;font-weight:700;font-size:16px;line-height:1.2;color:#444;padding-top:0;margin-top:-2px} /* label lines up with the top of the icon (Carrie, Nov 4) */
html body #main .fd-card--soft .nh-rows .nh-row__x{grid-column:2;grid-row:2;font-size:15px;line-height:1.55}
    /* Lye page Overview (Carrie, Nov 4): topics as icon rows, safety rules as icon rows, Lye Calculator and Safety FAQ link cards. */
html body #main .sct.fd .nh-trow{display:grid !important;grid-template-columns:36px minmax(0,1fr) !important;column-gap:12px !important;row-gap:2px !important;align-items:start !important;margin:0 0 20px !important}
html body #main .sct.fd .nh-trow > .nh-row__i{display:grid !important;place-items:center;grid-column:1;grid-row:1 / span 2;width:36px;height:36px;border-radius:8px;background:#e3eee9;color:#3b755f;font-size:20px}
html body #main .sct.fd .nh-trow > :is(h3,h4){grid-column:2;grid-row:1;margin:-2px 0 0 !important;font-family:'Roboto Condensed',sans-serif !important;font-weight:700 !important;font-size:16px !important;line-height:1.2 !important;letter-spacing:0 !important;text-transform:none !important;color:#444 !important}
html body #main .sct.fd .nh-trow > p{grid-column:2;grid-row:2;margin:4px 0 0 !important}
html body #main .sct.fd ul.nh-srows{list-style:none !important;padding:0 !important;margin:0 0 12px !important}
html body #main .sct.fd ul.nh-srows > li{display:grid !important;grid-template-columns:36px minmax(0,1fr) !important;column-gap:12px !important;align-items:center !important;margin:0 0 12px !important;padding:0 !important;font-weight:700}
html body #main .sct.fd ul.nh-srows > li::before{display:none !important;content:none !important}
html body #main .sct.fd ul.nh-srows > li > .nh-row__i{display:grid !important;place-items:center;width:36px;height:36px;border-radius:8px;background:#e3eee9;color:#3b755f;font-size:20px}
html body #main .sct.fd p.nh-linkcard.nh-m-only{display:block !important;margin:0 0 20px !important}
html body #main .fd-card--warn .fd-rich > p:first-child .nh-warn-ic{display:inline-block !important;color:#a86f0c;font-size:20px;vertical-align:-4px;margin-right:6px}
html body #main .sct.fd ul.nh-srows > li.nh-d-only{display:none !important}
    /* Nov 4 (Carrie): no repeats on phones. The Documents row near Add to cart hides when the page has a Documents tab. */
html body:has(#nh-docs) #main .product-info > .product-info__block-item:has(.nh-docs--chips){display:none !important}
html body #main .product-info__liquid > div.nh-gone-m{display:none !important}
html body #main .sct.fd :is(h3,h4).nh-eyebrow{font-family:Antonio,Anton,sans-serif !important;font-size:15px !important;font-weight:700 !important;letter-spacing:.9px !important;color:#3b755f !important;text-transform:uppercase !important;line-height:24px !important;margin:24px 0 12px !important}
html body:has(#nh-soap-test .nh-cp) #main .product-info > .product-info__block-item:has(.nh-cp){display:none !important} /* soap test results repeat in the Soap test tab (Carrie, Nov 4) */
html body #main .sct.fd ul.fd-ifra small{font-size:13px !important} /* "Cat 9 · CP, MP, shampoo": 13px minimum */
html body #main .sct.fd #nh-specs.fd-part{background:transparent !important;padding-top:0 !important} /* Specs tab on white like the other tabs; its white card had left a white strip inside a green tab (Nov 4) */
    /* Specs tab quick facts (Carrie, Nov 4): number tiles + green check chips instead of six plain lines. */
html body #main .sct.fd #nh-specs p.nh-specs-orig{display:none !important}
html body #main .sct.fd .nh-specs-q{display:block !important;margin:0 0 24px !important}
html body #main .sct.fd .nh-specs-q__tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 12px}
html body #main .sct.fd .nh-specs-q__tile{background:#f3f7f5;border-radius:8px;padding:12px 14px;display:flex;flex-direction:column;gap:2px}
html body #main .sct.fd .nh-specs-q__k{font-size:13px;color:#444;line-height:1.3}
html body #main .sct.fd .nh-specs-q__v{font-family:'Roboto Condensed',sans-serif;font-weight:700;font-size:22px;line-height:1.2;color:#3b755f}
html body #main .sct.fd .nh-specs-q__chips{display:flex;flex-wrap:wrap;gap:8px}
html body #main .sct.fd .nh-specs-q__chip{display:inline-flex;align-items:center;gap:6px;background:#e3eee9;color:#2f5e4c;border-radius:999px;padding:6px 12px;font-size:14px;font-weight:700;line-height:1.2}
html body #main .sct.fd .nh-specs-q__chip.is-no{background:#f3f3f3;color:#444;font-weight:400}
html body #main .sct.fd .nh-specs-q__rows{margin:12px 0 0;font-size:15px}
    /* Product tabs as sections that open (Carrie, Nov 4): no tab row; each section is a row with an icon, title and +. */
html body #main .sct.fd.nh-acc .fd-nav{display:none !important}
html body #main .sct.fd.nh-acc .fd-part{display:none !important}
html body #main .sct.fd.nh-acc .fd-part.nh-open{display:block !important;padding-top:4px !important;padding-bottom:8px !important} /* the next row's own 12px padding makes about 24px to its label (Carrie, Nov 4) */
html body #main .sct.fd.nh-acc .fd-part.nh-open > .fd-cols > div > h2:first-child, html body #main .sct.fd.nh-acc .fd-part.nh-open h2.h3:first-child{display:none !important}
html body #main .sct.fd .nh-acc__h{display:none}
html body #main .sct.fd.nh-acc .nh-acc__h{display:grid !important;grid-template-columns:minmax(0,1fr) 20px;align-items:center;column-gap:12px;width:100%;min-height:60px;padding:12px 0;margin:0;background:none;border:0;border-top:1px solid rgba(68,68,68,.12);text-align:left;font-family:'Roboto Condensed',sans-serif;font-weight:700;font-size:17px;color:#444;cursor:pointer}
html body #main .sct.fd.nh-acc .nh-acc__h.is-first{border-top:0}
html body #main .sct.fd.nh-acc .fd-part.nh-open + .nh-acc__h{border-top:0} /* no line right under an open section (Carrie, Nov 4) */
html body #main .sct.fd.nh-acc :is(.nh-acc__h, .fd-part){margin-top:0 !important;margin-bottom:0 !important}
html body #main .sct.fd.nh-acc .fd-tools{margin-top:24px !important}
html body #main .sct.fd.nh-acc .fd-part.nh-open :is(p,ul,ol,div,dl):last-child{margin-bottom:0 !important}
html body #main .sct.fd.nh-acc .fd-part.nh-open:has(> .fd-cols > :last-child > :is(.fd-card--soft, .nh-kv-card):last-child, > .fd-cols > :is(.fd-card--soft, .nh-kv-card):last-child){padding-bottom:12px !important} /* a green band at the end keeps 24px to the next label */
html body #main .sct.fd.nh-acc .nh-acc__i{display:none !important} /* no icons on these rows: plain like Good to know (Carrie, Nov 4) */
html body #main .sct.fd.nh-acc .nh-acc__h::after{content:"+";font:700 24px/1 'Roboto Condensed',sans-serif;color:#3b755f;justify-self:end}
html body #main .sct.fd.nh-acc .nh-acc__h[aria-expanded="true"]::after{content:"\2212"}
html body #main .sct.fd a.nh-doc{display:flex !important;width:100% !important;box-sizing:border-box !important} /* Documents tab: all document cards full width, same size (Nov 4) */
html body #main .sct.fd .fd-card:has(table.nh-cu-t){display:none !important} /* FDA Info repeats "Approved for" above (Carrie, Nov 4) */
    /* FDA info rows (Carrie, Nov 4): each use is its own white row on the green band, the answer in green (or red for No). */
html body #main .sct.fd table.nh-cu-t, html body #main .sct.fd table.nh-cu-t > tbody{display:block !important;width:100% !important;border:0 !important;background:none !important}
html body #main .sct.fd table.nh-cu-t tr{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:12px !important;background:#fff !important;border:1px solid rgba(0,0,0,.08) !important;border-radius:8px !important;padding:10px 14px !important;min-height:44px !important;box-sizing:border-box !important;margin:0 0 8px !important}
html body #main .sct.fd table.nh-cu-t tr:last-child{margin-bottom:0 !important}
html body #main .sct.fd table.nh-cu-t :is(th,td){background:none !important;border:0 !important;padding:0 !important;font-size:15px !important;line-height:1.3 !important}
html body #main .sct.fd table.nh-cu-t th{color:#444 !important;font-weight:600 !important;text-align:left !important}
html body #main .sct.fd table.nh-cu-t td{color:#3b755f !important;font-weight:700 !important;text-align:right !important;white-space:nowrap !important}
html body #main .sct.fd table.nh-cu-t td.nh-no{color:#96382a !important}
html body #main#main .fd-card.nh-bleed > .fd-fine:last-child{margin-bottom:0 !important}
html body #main .nh-cp{padding:22px 20px 24px !important}
  }
@media (max-width:767px){
  /* Color pages (Carrie, Nov 4): the Ingredients section has no second "INCI + Info" heading under its row name, its facts
     become a small table with light green rows, and the "More or less…" note sits inside the Use rate card. */
  html body #main .sct.fd.nh-acc #nh-ingredients .fd-card > .nh-ant-sm:first-child{display:none !important}
  html body #main .sct.fd .nh-kv-src{display:none !important}
  html body #main .sct.fd .nh-kv-t{display:table;width:100%;border-collapse:collapse;border:0 !important;margin:0 !important;background:transparent}
  html body #main .sct.fd .nh-kv-t tr:nth-child(odd){background:#eff5f1}
  html body #main .sct.fd .nh-kv-t tr:nth-child(even){background:transparent}
  html body #main .sct.fd .nh-kv-t :is(th,td){border:0 !important;padding:10px 12px !important;text-align:left;vertical-align:top;font-size:15px;line-height:1.4;color:#444;background:transparent}
  html body #main .sct.fd .nh-kv-t th{width:36%;font-family:'Roboto Condensed',sans-serif;font-weight:700}
  html body #main .fd-card--soft .nh-ur-src{display:none !important}
  /* The first row's name follows the section spacing (24px from the band above) instead of sitting in the middle of a 60px row. */
  html body #main .sct.fd.nh-acc .nh-acc__h.is-first{min-height:0 !important;padding-bottom:19px !important}
  /* Use rate tips and "Not recommended" chips (Carrie, Nov 4). The tip sits on the band under the white cards. */
  html body #main#main .fd-card--soft.fd-card--soft .metafield-rich_text_field > p.nh-ur-tip.nh-ur-tip{display:flex !important;gap:8px;align-items:flex-start;background:transparent !important;border:0 !important;padding:0 !important;margin:12px 0 0 !important;font-size:14px;line-height:1.45;color:#444}
  html body #main .fd-card--soft .nh-ur-tip .ti{color:#3b755f;font-size:18px;line-height:1.2;flex:none}
  html body #main .fd-card--soft .nh-ur-chip{display:inline-flex;align-items:center;gap:4px;margin:0 0 4px 6px;padding:3px 9px;border-radius:999px;background:#f8e9e6;color:#96382a;font:700 13px/1.3 'Roboto Condensed',sans-serif;vertical-align:1px}
  html body #main .fd-card--soft .nh-ur-chip .ti{font-size:14px}
  html body #main .fd-card--soft .nh-ur-note{display:block;margin-top:12px;font-weight:400;font-size:14px;line-height:1.4;color:#444}
  /* Lye page, fewer icons (Carrie, Nov 4): topics are plain bold headings with their text; the two safety rules are a
     short list with green dots on a light green band; no truck next to Restricted Shipping; the agreement list uses small
     dots instead of checkmarks. The link cards and the Before you buy warning keep their icons. */
  html body #main .sct.fd .nh-trow{display:block !important;margin:0 0 24px !important}
  html body #main .sct.fd .nh-trow > .nh-row__i{display:none !important}
  html body #main .sct.fd .nh-trow > :is(h3,h4){margin:0 0 8px !important}
  html body #main .sct.fd .nh-trow > p{margin:0 !important}
  html body #main .sct.fd ul.nh-srows{background:#eff5f1 !important;border-radius:8px;padding:12px 16px !important;margin:0 0 12px !important}
  html body #main .sct.fd ul.nh-srows > li{display:block !important;position:relative;padding-left:20px !important;margin:0 0 8px !important}
  html body #main .sct.fd ul.nh-srows > li:last-of-type, html body #main .sct.fd ul.nh-srows > li:has(+ li.nh-d-only){margin-bottom:0 !important}
  html body #main .sct.fd ul.nh-srows > li > .nh-row__i{display:none !important}
  html body #main .sct.fd ul.nh-srows > li::before{display:block !important;content:"" !important;position:absolute;left:2px;top:.6em;width:8px;height:8px;border-radius:50%;background:#3b755f}
  html body #main .fd-card--warn .fd-rich > p:first-child .nh-warn-ic{display:none !important}
  html body #main .fd-card--warn .fd-rich li{padding-left:20px !important}
  html body #main .fd-card--warn .fd-rich li::before{width:7px !important;height:7px !important;top:.95em !important;left:3px !important;background:#a86f0c !important}
  /* Color sets (Carrie, Nov 4): the products in the set are one white card with tighter rows instead of seven cards. */
  html body #main ul.fd-set{display:block !important;background:#fff;border:1px solid rgba(68,68,68,.12);border-radius:8px;padding:4px 12px !important;margin:0 !important}
  html body #main ul.fd-set > li{margin:0 !important}
  html body #main ul.fd-set > li > a{border:0 !important;border-radius:0 !important;padding:8px 0 !important;gap:12px !important;align-items:center}
  html body #main ul.fd-set > li > a > img{width:28px !important;height:28px !important;border-radius:50%}
  html body #main .nh-set-gone{display:none !important}
  /* Product pages (Carrie, Nov 4): question headings inside the description are small bold headings like the lye topics;
     long blog lists show 3 posts and a "Show all" link; pages with only 2 sections show both open (no dropdowns). */
  html body #main .sct.fd .fd-prose > :is(h3,h4,h5):not(.nh-eyebrow):not(.nh-ant-sm){font-family:'Roboto Condensed',sans-serif !important;font-weight:700 !important;font-size:16px !important;line-height:1.3 !important;letter-spacing:0 !important;text-transform:none !important;color:#444 !important;margin:24px 0 8px !important}
  html body #main .sct.fd .fd-prose > :is(h3,h4,h5):not(.nh-eyebrow):not(.nh-ant-sm):first-child{margin-top:0 !important}
  html body #main ul.nh-blogs > li.nh-blog-more{display:none !important}
  html body #main .nh-blogs-all{display:block;margin:12px auto 0;padding:4px 0;background:none;border:0;color:#3b755f;font:700 15px/1.3 'Roboto Condensed',sans-serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
  html body #main .sct.fd.nh-flat .fd-nav{display:none !important}
  html body #main .sct.fd.nh-flat .fd-part{display:block !important}
  /* Oil blend and similar (Carrie, Nov 4): "About our blend" rows without icons, text the same size as the Overview;
     the bottom Lye calculator card hides when the buy box already links the calculator; on pages with both sections open,
     the blog heading is a small heading (singular for one post). */
  html body #main .fd-card--soft .nh-rows > p.nh-row{display:block !important;margin:0 0 24px !important}
  html body #main .fd-card--soft .nh-rows > p.nh-row:last-child{margin-bottom:0 !important}
  html body #main .fd-card--soft .nh-rows .nh-row__i{display:none !important}
  html body #main .fd-card--soft .nh-rows .nh-row__t{margin:0 0 8px !important}
  html body #main .fd-card--soft .nh-rows .nh-row__x{display:block;font-size:17px !important;line-height:1.65 !important}
  html body #main .fd-tools a.fd-tool.nh-tool-dup{display:none !important}
  html body #main .sct.fd.nh-flat #nh-blogs > h2{font-family:'Roboto Condensed',sans-serif !important;font-weight:700 !important;font-size:17px !important;line-height:1.3 !important;letter-spacing:0 !important;text-transform:none !important;color:#444 !important;margin:0 0 16px !important}
  /* Candle dyes (Carrie, Nov 4): "Good to know" band with a few tags instead of the 8-line checklist, and no notes that
     repeat the description. Reviews with none yet: no Reviews/Questions tabs or search/sort, just the invite to write one. */
  html body #main .fd-card--soft ul.fd-bio.nh-cd-src{display:none !important}
  html body #main .fd-card--soft .nh-cd-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
  html body #main .fd-card--soft .nh-cd-chips > li{display:inline-flex;align-items:center;background:#fff;color:#2f5e4c;border-radius:999px;padding:6px 12px;font:700 14px/1.2 'Roboto Condensed',sans-serif;margin:0 !important}
  html body #main .fd-card--soft .nh-cd-chips > li::before{display:none !important}
  html body #main .fd-card--soft p.fd-cd-note.nh-cd-gone{display:none !important}
  html body #main .jdgm-review-widget:has(.jm-no-reviews-state__text) .jdgm-tabs{display:none !important}
  /* Molds (Carrie, Nov 4): Size and capacity on white, with full-width rows that alternate light green, like Quick facts
     and the Ingredients tables. Each part's name sits above its rows. */
  html body #main#main#main .fd-card.fd-card.nh-bleed:has(.nh-mt){background:#fff !important;padding-top:0 !important;padding-bottom:0 !important}
  html body #main#main .sct.fd .nh-mt table{display:block !important;width:100% !important;background:transparent !important;border:0 !important;border-radius:0 !important;padding:0 !important;margin:0 0 9px !important}
  html body #main#main .sct.fd .nh-mt table:last-of-type{margin-bottom:0 !important}
  html body #main#main .sct.fd .nh-mt caption{display:block !important;position:static !important;width:auto !important;height:auto !important;clip:auto !important;white-space:normal !important;text-align:left;padding:0 0 11px !important;margin:0 !important;font:700 16px/1.3 'Roboto Condensed',sans-serif !important;color:#444 !important}
  html body #main#main .sct.fd .nh-mt table:first-child caption:not(:has(span, a)){display:none !important} /* a first caption that only repeats the card heading ("Size and capacity") */
  html body #main#main .sct.fd .nh-mt caption span{display:block;font-size:13px !important;letter-spacing:.04em;text-transform:uppercase;color:#3b755f}
  html body #main#main .sct.fd .nh-mt tbody{display:block !important}
  html body #main#main .sct.fd .nh-mt tr{display:grid !important;grid-template-columns:96px minmax(0,1fr) !important;column-gap:12px !important;align-items:start !important;background:transparent !important;border:0 !important;border-radius:0 !important;padding:10px 12px !important;margin:0 !important}
  html body #main#main .sct.fd .nh-mt tr.nh-alt{background:#eff5f1 !important}
  html body #main#main .sct.fd .nh-mt :is(th,td){background:transparent !important;border:0 !important;padding:0 !important;text-align:left !important;font-size:15px !important;line-height:1.4 !important;color:#444}
  html body #main#main .sct.fd .nh-mt th{font-family:'Roboto Condensed',sans-serif;font-weight:700}
  html body #main#main .sct.fd .fd-card:has(.nh-mt) .fd-fine{margin-top:10px !important} /* 9px table gap and 10px note gap = 24px and 12px from the text */
  html body #main#main .sct.fd .nh-mt :is(tr, table).nh-mt-gone{display:none !important}
  html body #main .fd-card--soft .nh-ur-chip.nh-ur-chip--ok{background:#eff5f1;color:#2f5e4c}
  /* Biodegradable glitters (Carrie, Nov 4): "More info" checklist → "Good to know" tags, like the candle dyes. */
  html body #main .fd-card--soft ul.fd-bio.nh-bg-src{display:none !important}
  /* Reviews (Carrie, Nov 4): a chat bubble to the left of "Ask a question". */
  html body #main .jdgm-review-widget .jm-action-buttons__button.jm-button--secondary{display:flex !important;align-items:center;gap:6px;width:max-content !important}
  html body #main .jdgm-review-widget .jm-action-buttons__button.jm-button--secondary::before{content:"";flex:none;width:18px;height:18px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 20l1.3-3.9A9 8 0 1 1 7.7 19L3 20'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 20l1.3-3.9A9 8 0 1 1 7.7 19L3 20'/%3E%3C/svg%3E") center/contain no-repeat}
  /* Gift card (Carrie, Nov 4): amounts as a 2×2 grid, "About this gift card" like the other products, a clearer
     "send as a gift" option. */
  html.nh-gc body #main .product-info .variant-picker__option-values{grid-template-columns:repeat(2,minmax(0,1fr)) !important;display:grid !important}
  html.nh-gc body #main .shopify-section--specification-table h2{font-size:24px !important;line-height:1.2 !important;color:#444 !important}
  html.nh-gc body #main .product-info .checkbox-container label{font-size:15px !important;color:#444 !important;opacity:1 !important}
  /* Wishlist button (Carrie, Nov 4): the same 54px square as on other products, lined up with Add to cart even when
     something (like the gift card's "send as a gift" box) sits above the button. */
  html body #main .product-info__buy-buttons-row > .wishlist-btn{align-self:flex-end !important;width:54px !important;height:54px !important;min-height:0 !important;flex:none !important}
  /* Reviews (Carrie, Nov 4): no info icon before "How are reviews collected?". */
  html body #main .jdgm-review-widget .jm-review-collection-link svg{display:none !important}
  html body #main .jdgm-review-widget .jm-review-collection-link .jm-with-icon{--jm-icon-space:0 !important;gap:0 !important}
  /* Fragrance soap test (Carrie, Nov 4): test notes skip the three lines the tiles already show; the "test it yourself"
     line is a small plain note. */
  html body #main #nh-soap-test p.nh-st-dup{display:none !important}
  html body #main #nh-soap-test p.nh-st-note{font-size:14px !important;line-height:1.5 !important;color:#444 !important}
  /* Similar colors / Pairs well with / Matching scents tiles match the "You may also like" cards (Carrie, Nov 4): same
     card, name 15px bold, a small gray type line under it. */
  html body #main .product-info .cp a.cp__link{padding:8px 14px 8px 8px !important;border:.8px solid rgba(0,0,0,.08) !important;border-radius:8px !important;background:#fff !important}
  html body #main .product-info .cp .nh-cp-txt{display:grid;gap:2px;min-width:0}
  html body #main .product-info .cp .cp__name{font:700 15px/1.25 'Roboto Condensed',sans-serif !important;color:#444 !important}
  html body #main .product-info .cp .nh-cp-type{font-size:13px;line-height:1.3;color:rgba(68,68,68,.82)}
  /* All color cards (Similar colors, Pairs well with, Matching colors) match the Blends well with scent cards (Carrie, Nov 5-6) */
  html body #main .product-info .cp a.cp__link{padding:8px 10px !important}
  html body #main .product-info .cp .cp__sw{width:20px !important;height:20px !important;border-radius:4px !important;border:.8px solid rgba(0,0,0,.15) !important}
  html body #main .product-info .cp .cp__dot{width:20px !important;height:20px !important}
  html body #main .product-info .cp .cp__name{font:600 13px/1.25 'Roboto Condensed',sans-serif !important}
  html body #main .product-info .cp .nh-cp-type{font-size:13px !important;line-height:1.3 !important;color:rgba(0,0,0,.55) !important}
  html body #main .product-info .cp :is(.cp__list,.cp__scents){display:grid !important;grid-template-columns:minmax(0,1fr) !important;gap:8px !important}
  /* Maker's note (Carrie, Nov 4): its own spot in the Overview, under the description, with a small heading. */
  html body #main .nh-maker{margin:24px 0 0}
  html body #main .nh-maker__h{margin:0 0 12px !important;font:400 15px/1.2 Anton,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#3b755f}
  html body #main .nh-maker #maker-note{margin:0 !important;padding:0 0 0 14px !important;border-left:3px solid #3b755f !important;font-size:16px !important;color:#444 !important}
  html body #main .nh-maker #maker-note p{margin:0 0 8px !important}
  /* You may also like (Carrie, Nov 4): no green arrow in each card; the same round white scroll button as the cured-color
     photo strip, over the right edge (and left once scrolled). */
  html body #main#main .shopify-section--product-recommendations product-card.product-card{grid-template-columns:72px minmax(0,1fr) !important}
  html body #main#main .shopify-section--product-recommendations product-card.product-card::after{display:none !important;content:none !important}
  html body #main#main .shopify-section--product-recommendations .floating-controls-container{position:relative !important}
  html body #main#main .shopify-section--product-recommendations .floating-controls-container button:is([is="prev-button"], [is="next-button"]){display:grid !important;place-items:center;position:absolute !important;top:50% !important;transform:translateY(-50%) !important;z-index:2;width:36px !important;height:36px !important;min-width:0 !important;padding:0 !important;margin:0 !important;border:0 !important;border-radius:50% !important;background:#fff !important;opacity:1 !important;visibility:visible !important;color:#444 !important;box-shadow:0 1px 3px rgba(0,0,0,.12) !important}
  html body #main#main .shopify-section--product-recommendations .floating-controls-container button[is="next-button"]{right:0 !important;left:auto !important}
  html body #main#main .shopify-section--product-recommendations .floating-controls-container button[is="prev-button"]{left:0 !important;right:auto !important}
  html body #main#main .shopify-section--product-recommendations .floating-controls-container button:is([is="prev-button"], [is="next-button"])[disabled]{display:none !important}
  html body #main#main .shopify-section--product-recommendations .floating-controls-container button:is([is="prev-button"], [is="next-button"]) svg{width:14px !important;height:14px !important}
html body #main .sct.fd .fd-gl-note.nh-gl-out{margin-top:0 !important}
html body button[data-a11y-identifier^="bis-button"]{background:#3b755f !important;border-color:#3b755f !important;color:#fff !important;font-weight:700 !important}
html body form[data-testid="klaviyo-form-VNkvki"] h2 span{font-size:26px !important;font-weight:700 !important;line-height:1.2 !important}
html body form[data-testid="klaviyo-form-VNkvki"] button{font-weight:700 !important}
  /* Accessibility (Nov 4): in the phone accordion the open part's own h2 was display:none, so screen readers went
     from the page title (h1) straight to h3s. Keep it hidden on screen but readable by screen readers. Height 0 so the phone spacing script doesn't count it. */
  html body #main .sct.fd.fd.nh-acc .fd-part.nh-open > .fd-cols > div > h2:first-child,
  html body #main .sct.fd.fd.nh-acc .fd-part.nh-open h2.h3:first-child{display:block !important;position:absolute !important;width:1px !important;height:0 !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0 0 0 0) !important;clip-path:inset(50%) !important;white-space:nowrap !important;border:0 !important}
  /* Tool pages (Nov 5): small text (tags, table headings, unit suffixes) no smaller than 13px. */
  html body .tp-tool .nh-cost__tag,html body .tp-tool th,html body .tp-tool td,html body .tp-tool [class*="suffix"],html body .tp-tool [id$="-suffix"],html body .tp-tool .nh-fnd__how,html body .tp-tool .nh-lye-calc__glossarylink a,html body .tp-tool .nh-lye-calc__sapinfo strong,html body .tp-tool .nh-lye-calc__collabel{font-size:13px !important}
  /* Tool pages (Nov 5): spacing rhythm. Short notes 12px, bands 24px, heading to content 16px. */
  html body .tp-tool .tp-intro__done{padding-top:12px !important;padding-bottom:12px !important}
  html body .tp-tool .nh-next.nh-bleed,html body .tp-tool #nhl-out{padding-top:24px !important;padding-bottom:24px !important}
  html body .tp-tool .nh-lye-calc__notesbox{padding-bottom:24px !important}
  html body .tp-tool :is(h2,h3,h4):not(.tp-intro__lbl) + :is(p,div,ul,table){margin-top:16px !important}
  html body .tp-tool h3.nh-ant-sm + p:not(.nh-cost__hint){margin-top:12px !important}
  html body .tp-tool #nhc-start{margin-top:16px !important}
  html body .tp-tool .nh-cost__printbar.nh-bleed{padding-top:24px !important;padding-bottom:24px !important}
  html body .tp-tool #nhc-start{margin-bottom:24px !important}
  html body .tp-tool .nh-cost__tools + #nhc-list,html body .tp-tool #nhc-list{margin-top:12px !important}
  html body .tp-tool #nhc-insight{margin-top:12px !important}
  html body .tp-tool #nhc-p2 + .nh-cost__printbar.nh-bleed{margin-top:24px !important}
  html body #main #nh-cost .nh-cost__note + #nhc-next.nh-next{margin-top:24px !important}
  /* Soap Cost ingredient rows (Nov 5): label 8px above its field, 12px between fields, 24px between rows,
     the remove x sits beside the first field and the cost / "Needs a price" beside Amount. */
  html body .tp-tool .nh-cost__line:has(.nh-cost__f){display:flex !important;flex-wrap:wrap !important;gap:12px 10px !important;align-items:flex-end !important}
  html body .tp-tool .nh-cost__line:has(.nh-cost__f) > :is(.nh-cost__line-main,.nh-cost__line-side){display:contents !important}
  html body .tp-tool .nh-cost__line-main > .nh-cost__f:first-child{order:1;flex:1 1 calc(100% - 44px) !important;min-width:0}
  html body .tp-tool .nh-cost__line:has(.nh-cost__f) .nh-cost__x{order:2;align-self:flex-end;margin-bottom:9px}
  html body .tp-tool .nh-cost__line-main > .nh-cost__f:not(:first-child){order:3}
  html body .tp-tool .nh-cost__line:has(.nh-cost__f) .nh-cost__line-side > :not(.nh-cost__x){order:4;margin-bottom:10px}
  html body .tp-tool .nh-cost__line-main > .nh-cost__price{order:5;flex:1 1 100% !important}
  html body .tp-tool .nh-cost__line .nh-cost__f{gap:8px !important}
  /* Ingredient List Maker rows (Nov 5): same rhythm as Soap Cost: label 8px above its field, 12px between fields (24px between rows is unchanged). */
  html body #main .nh-lab .nh-lab__line{row-gap:12px !important}
  html body #main .nh-lab .nh-lab__line .nh-cost__f{gap:8px !important}
  /* Oil Swap Helper (Nov 5): same field rhythm: label 8px above its field, 12px between fields (24px between rows unchanged). */
  html body .tp-tool .nh-swap :is(label,.nh-swap__lbl):not(.nh-swap__radios *){margin-bottom:8px !important}
  html body .tp-tool .nh-swap .nh-swap__row{row-gap:12px !important}
  html body #main .tp-tool .nh-swap :is(.nh-swap__opt,.nh-swap__alt){border:0 !important}
  html body #main .tp-tool .nh-swap .nh-swap__alt{margin:8px 0 0 !important;padding:0 !important;background:none !important;width:auto !important}
  html body #main .tp-tool .nh-swap .nh-swap__opt{padding:16px var(--container-gutter,20px) !important;margin:0 calc(-1 * var(--container-gutter,20px)) !important;border-radius:0 !important;background:#f3f7f5 !important}
  html body #main .tp-tool .nh-swap .nh-swap__list{gap:12px}
  html body #main .tp-tool .nh-swap .nh-swap__opt.is-picked{box-shadow:none !important}
  html body #main .tp-tool .nh-swap .nh-swap__table th,html body #main .tp-tool .nh-swap .nh-swap__table td{border:0 !important}
  html body #main .tp-tool .nh-swap .nh-swap__table tbody tr:nth-child(odd){background:#fff}
  html body #main .tp-tool .nh-swap .nh-swap__opt .nh-swap__table{width:calc(100% + 2 * var(--container-gutter,20px));max-width:none;margin-left:calc(-1 * var(--container-gutter,20px));margin-right:calc(-1 * var(--container-gutter,20px))}
  html body #main .tp-tool .nh-swap .nh-swap__table :is(th,td):first-child{padding-left:var(--container-gutter,20px)}
  html body #main .tp-tool .nh-swap .nh-swap__table :is(th,td):last-child{padding-right:var(--container-gutter,20px)}
  /* Recipe pickers (Carrie, Nov 5): the phone's own list showed huge text, so recipe selects become a styled in-page list. */
  html body .nh-ps-native{position:absolute !important;width:1px !important;height:1px !important;opacity:0 !important;pointer-events:none !important;margin:0 !important;padding:0 !important;border:0 !important}
  html body #main .nh-ps{display:flex !important;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:48px;margin:0;padding:0 12px !important;border:1px solid rgba(68,68,68,.2) !important;border-radius:6px !important;background:#fff !important;color:#444 !important;font:400 16px/1.3 'Roboto Condensed',sans-serif !important;text-align:left;text-transform:none !important;cursor:pointer}
  html body #main .nh-ps.is-ph{color:#595959 !important}
  html body #main .nh-ps::after{content:'';flex:none;width:9px;height:9px;border-right:2px solid #3b755f;border-bottom:2px solid #3b755f;transform:rotate(45deg);margin:-4px 4px 0 0}
  html body #main .nh-ps[aria-expanded="true"]::after{transform:rotate(-135deg);margin-top:4px}
  html body #main .nh-ps__t{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  html body #main .nh-ps__panel{margin-top:8px;background:#fff;border:1px solid rgba(68,68,68,.2);border-radius:8px;max-height:min(60vh,420px);overflow:auto;padding:4px 0}
  html body #main .nh-ps__panel[hidden]{display:none}
  html body #main .nh-ps__g{padding:8px 16px 0;font:700 14px/1.3 'Roboto Condensed',sans-serif;color:#3b755f}
  html body #main .nh-ps__o{display:block !important;width:100%;min-height:44px;margin:0;padding:10px 16px !important;border:0 !important;border-radius:0 !important;background:none !important;color:#444 !important;font:400 16px/1.3 'Roboto Condensed',sans-serif !important;text-align:left;text-transform:none !important;white-space:normal;cursor:pointer}
  html body #main .nh-ps__o.is-on{background:#eff5f1 !important;color:#3b755f !important;font-weight:700 !important}
  /* Recipe band (Carrie, Nov 5): Oil Swap and Measurement Converter match Soap Cost / Ingredient List Maker: full-width #f0f5f2 band with the picker inside; the note above it stays on white (Carrie, Nov 5). */
  html body #main :is(.nh-swap__load,.nh-meas__load){margin:0 calc(-1 * var(--container-gutter,20px)) 16px !important;padding:12px var(--container-gutter,20px) !important;border-radius:0 !important;background:#f0f5f2 !important}
  /* Nov 5 (Carrie, real phone): a long picked recipe name pushed the dropdown past the right edge. Let the box shrink and cut the text with ... */
  html body #main :is(.nh-swap__load,.nh-meas__load) > div{min-width:0 !important;max-width:100% !important}
  html body #main .nh-ps{min-width:0 !important;max-width:100% !important}
  html body #main .nh-ps__t{min-width:0 !important}
  html body #main :is(.nh-swap__load,.nh-meas__load) > :is(.nh-swap__hint,.nh-meas__hint){flex:0 0 100%;margin:0 0 4px !important}
  html body #main .tp-tool .nh-swap .nh-swap__add{color:#3b755f !important;background:none !important;border:0 !important;padding:4px 0 !important;font:700 14px/1.3 'Roboto Condensed',sans-serif !important;text-decoration:underline !important;text-transform:none !important;border-radius:0 !important;width:auto !important;min-height:0 !important}
  html body #main .tp-tool .nh-swap .nh-swap__add::before{content:'+' !important;display:inline-block !important;margin-right:4px !important}
  /* Nov 5 (Carrie): Soap Cost and Blend Builder match Oil Swap: "+ Add ..." is a green underlined link, fields are 48px tall, card headings are 18px. */
  html body #main .tp-tool #nh-cost #nhc-add,html body #main .tp-tool #nh-blend .nh-blend__acts #nhb-add{color:#3b755f !important;background:none !important;border:0 !important;padding:4px 0 !important;margin:12px 0 0 !important;font:700 14px/1.3 'Roboto Condensed',sans-serif !important;text-decoration:underline !important;text-transform:none !important;border-radius:0 !important;width:auto !important;min-height:0 !important}
  html body #main .tp-tool #nh-cost #nhc-add::before,html body #main .tp-tool #nh-blend #nhb-add::before{content:'+' !important;display:inline-block !important;margin-right:4px !important}
  html body #main #nh-cost :is(input:not([type=checkbox]):not([type=radio]),select){height:48px !important}
  html body #main .tp-tool #nh-blend .nh-blend__acts{align-items:center !important}
html body #main .tp-tool #nh-blend .nh-blend__acts #nhb-add{margin-top:0 !important}
html body #main #nh-cost h2,html body #main #nh-blend h2{font-size:18px !important}
html body #main .tp-tool .nh-lye-calc__recipetable:has(+ .nh-lye-prog.is-ok) tfoot tr{background:#d5e8dc !important}
html body #main .tp-tool .nh-lye-calc__recipetable tfoot td{color:#3b755f !important;font-size:15px !important;font-weight:700 !important}
html body #main .tp-tool .nh-lye-calc__panel:has(> .nh-lye-calc__empty.is-visible){padding-bottom:12px !important}
html body #main .tp-tool .nh-lye-calc__oilpanel > details.nh-props{border:0 !important;border-radius:0 !important}
html body #main .tp-tool .nh-lye-calc ~ .tp-feedback{margin-top:12px !important}
  /* Measurement Converter (Nov 5): match Oil Swap / Soap Cost / Blend Builder */
  html body #main .tp-tool #nhm-s-add{color:#3b755f !important;background:none !important;border:0 !important;padding:4px 0 !important;margin:6px 0 0 !important;font:700 14px/1.3 'Roboto Condensed',sans-serif !important;text-decoration:underline !important;text-transform:none !important;border-radius:0 !important;width:auto !important;min-height:0 !important}
  html body #main .tp-tool #nhm-s-add::before{content:'+' !important;display:inline-block !important;margin-right:4px !important}
  html body #main .tp-tool .nh-meas__eyebrow{text-transform:none !important;letter-spacing:normal !important;font-size:14px !important}
  html body #main .tp-tool .nh-meas__result table{width:calc(100% + 40px) !important;max-width:none !important;margin:0 -20px 12px !important;border:0 !important}
  html body #main .tp-tool .nh-meas__result :is(th,td){border:0 !important;padding-top:10px !important;padding-bottom:10px !important}
  html body #main .tp-tool .nh-meas__result tr > :first-child{padding-left:20px !important}
  html body #main .tp-tool .nh-meas__result tr > :last-child{padding-right:20px !important}
  html body #main .tp-tool .nh-meas__result tbody tr:nth-child(odd){background:#eff5f1 !important}
  html body #main .tp-tool #nhm-p-scale .nh-meas__grid > div:first-child{grid-column:1 / -1 !important}
  html body #main .tp-tool .nh-meas__tabs{padding:12px 20px !important;margin-bottom:24px !important}
  html body #main .tp-tool :is(.nh-meas__tabs,.nh-mold-calc__tabs) > button{border:1px solid #3b755f !important;box-sizing:border-box !important}
  html body #main .tp-tool #nhm-s-oilnote{margin-bottom:16px !important}
  html body #main .tp-tool #nhm-p-rate .nh-meas__note{margin-top:16px !important}
  html body #main .tp-tool #nhm-s-rows{gap:16px !important}
  html body #main .tp-tool #nhm-s-rows > .nh-meas__row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 48px !important}
  html body #main .tp-tool #nhm-s-rows > .nh-meas__row > input:first-child{grid-column:1 / -1 !important;width:100% !important}
  html body #main .tp-tool #nhm-s-rows > .nh-meas__row > :is(input,select){width:100% !important;min-width:0 !important}
html body #main .tp-tool :is(input[id^="nh-lye-"]:not([type=checkbox]):not([type=radio]):not([type=hidden]),select[id^="nh-lye-"]){height:48px !important;min-height:48px !important}
html body #main .tp-tool [id^="nh-lye-"] ~ .nh-ps,html body #main .tp-tool .nh-ps:has(+ [id^="nh-lye-"]){min-height:48px !important}
html body #main #nh-cost h2,html body #main #nh-blend h2{font-weight:700 !important}
html body #main #nh-cost h3.nh-ant-sm,html body #main #nh-blend h3.nh-ant-sm{font-size:17px !important;text-transform:none !important;letter-spacing:normal !important}
html body #main #nh-blend #nhb-max>.nh-blend__eyebrow:first-child{margin-top:0 !important}
html body #main #nh-blend .nh-blend__eyebrow{text-transform:none !important;letter-spacing:normal !important;font-size:14px !important}
html body #main #nh-blend #nhb-max{margin-top:24px !important}
html body #main #nh-blend #nhb-max>.nh-blend__msg{margin-top:24px !important}
html body #main #nh-blend #nhb-max>.nh-blend__msg:first-child{margin-top:0 !important}
html body #main #nh-blend .nh-blend__card>p.nh-blend__fine:nth-last-child(2){margin-top:24px !important}
html body #main #nh-cost .nh-cost__start>p{font-size:14px !important;line-height:22.4px !important;margin:0 0 12px !important}
html body #main #nh-cost>.nh-cost__card>h2,html body #main #nh-cost h2{margin-bottom:6px !important}
html body #main #nh-cost .nh-cost__tools>.nh-cost__row{flex:1 1 100% !important;width:100% !important}
html body #main #nh-cost .nh-cost__tools>.nh-cost__row>.nh-cost__f--sm{flex:1 1 0 !important;width:auto !important;min-width:0 !important}
  /* Tool pages (Carrie, Nov 5): the search bar no longer rides along in the sticky header; it hides once the page is scrolled and returns at the top. */
  html.nh-nosrch body:has(#main .tp-tool) .header__mobile-search-bar{display:none !important}
  /* Gray line above "See a problem or have an idea?" (Carrie, Nov 5): shown only when a white section is right above it; removed when a shaded or colored section borders it. The script sets .nh-fb-line. */
  html body #main .tp-tool > .tp-feedback.nh-fb-line{border-top:1px solid rgba(68,68,68,.14) !important;padding-top:24px !important}
  html body #main .tp-tool > .tp-feedback:not(.nh-fb-line)::before{top:1px !important}
  /* collections: headings, tabs line, spacing */
  html body:has(.ch-explore-h) #main :is(.ch-explore-h,[id*="__rich_text"] h2,[id*="accordions"] h2){font-size:24px !important;line-height:1.2 !important}
  html body #main .ch-explore-h{margin:0 0 16px !important}
  html body #main .ch-tabs{border-bottom:0 !important;padding-bottom:0 !important;margin:0 0 16px !important}
  html body #main .ch-panel__note{margin:0 0 16px !important}
  html body #main .shopify-section:has(.ch-explore-h){padding-top:24px !important}
  html body #main .cf-card{border:0 !important;box-shadow:none !important}
  html body #main .cf-band{padding-top:22px !important;padding-bottom:24px !important}
  html body:has(#main .cf-card) #main .cf-band{padding-bottom:72px !important}
  html body #main .cf-band .cf-lead{display:none !important}
  html body #main [id*="__rich_text"] :is(h2,.h2) + *{margin-top:16px !important}
  html body #main [id*="accordions"] summary span{font-size:16px !important;font-weight:400 !important;line-height:1.3 !important}
  html body #main [id*="accordions"] .accordion-box{padding-left:0 !important;padding-right:0 !important;gap:8px !important}
  html body #main [id*="accordions"] details.accordion{border-radius:0 !important;padding-left:20px !important;padding-right:20px !important}
  html body #main [id*="accordions"] details.accordion[open]{border:0 !important;box-shadow:none !important;outline:0 !important}
  html:has(#main [id*="accordions"]),html:has(#main [id*="accordions"]) body{overflow-anchor:none !important}
  html body #main [id*="accordions"] details.accordion > summary ~ *{padding-bottom:0 !important;margin-bottom:10px !important}
  html body facet-drawer .facets-drawer__floating-apply,html body facet-drawer [class*="facets-drawer__floating"]{margin-left:0 !important;margin-right:0 !important}
  html body facet-drawer [class*="facets-drawer__floating"] button.button{min-height:48px !important;height:48px !important;padding-top:0 !important;padding-bottom:0 !important}
  /* Soap School Toolbox hub (phones): heading, Start here card, grey groups and tool rows match Home */
  html body main .sct.tp .tp-hero__in{text-align:center !important}
  html body main .sct.tp .tp-hero h1{font-size:30.24px !important;text-align:center !important}
  html body main .sct.tp .tp-hero p{text-align:center !important}
  html body main .sct.tp .tp-hero h1{width:100% !important;max-width:none !important}
  html body main .sct.tp .tp-hero .tp-trail,html body main .sct.tp .tp-hero .sct-eyebrow{width:100% !important;box-sizing:border-box !important}
  html body main .sct.tp .tp-hero a.tp-btn{display:flex !important;width:100% !important;min-height:48px !important;box-sizing:border-box !important;align-items:center !important;justify-content:center !important;margin-left:0 !important;margin-right:0 !important}
  html body main .sct.tp .tp-hero .sct-eyebrow,html body main .sct.tp .tp-hero .tp-trail{display:flex !important;justify-content:center !important;text-align:center !important}
  html body main .sct.tp .tp-start{display:flex !important;flex-direction:column !important;align-items:stretch !important;text-align:center !important;gap:16px !important;padding:24px 20px !important}
  html body main .sct.tp .tp-start > span{flex:0 0 auto !important;display:block !important;text-align:center !important}
  html body main .sct.tp .tp-start .tp-ic{display:flex !important;margin:0 auto !important}
  html body main .sct.tp .tp-start strong,html body main .sct.tp .tp-start small{display:block !important;text-align:center !important}
  html body main .sct.tp .tp-start small{margin-top:8px !important}
  html body main .sct.tp .tp-start .tp-btn{display:flex !important;width:100% !important;min-height:48px !important;box-sizing:border-box !important;align-items:center !important;justify-content:center !important;border-radius:6px !important;margin:0 !important}
  html body main .sct.tp .tp-hub-grp{background:#f8f8f8 !important;padding:24px 0 0 !important;margin:24px -20px 0 !important}
  html body main .sct.tp .tp-hub-grp + .tp-hub-grp{margin-top:0 !important}
  html body main .sct.tp .tp-start + .tp-hub-grp{margin-top:12px !important}
  html body main .sct.tp:has(.tp-hub-grp) .tp-body{padding-top:0 !important}
  html body #main .sct.tp .tp-body section.tp-hub-grp > h2.h3{box-shadow:none !important;background:transparent !important;color:#222 !important;text-align:center !important;padding:0 20px !important;margin:0 0 16px !important;font-size:24px !important}
  html body #main .sct.tp .tp-body section.tp-hub-grp > p{background:transparent !important;color:#444 !important;text-align:center !important;font-size:15px !important;line-height:22px !important;padding:0 20px !important;margin:0 0 24px !important}
  html body main .sct.tp .tp-hub-grp ul.tp-hub{display:grid !important;grid-template-columns:minmax(0,1fr) !important;gap:8px !important;margin:0 !important;padding:0 !important;width:auto !important}
  html body main .sct.tp .tp-hub-grp ul.tp-hub > li{border:0 !important;margin:0 !important;padding:0 !important}
  html body main .sct.tp .tp-hub-grp ul.tp-hub > li::before,html body main .sct.tp .tp-hub-grp ul.tp-hub > li::after{display:none !important}
  html body main .sct.tp .tp-hub-grp ul.tp-hub > li > a{display:grid !important;grid-template-columns:112px minmax(0,1fr) !important;grid-template-areas:"ic t" "ic p" "ic go" !important;grid-template-rows:auto auto auto !important;align-content:center !important;column-gap:16px !important;row-gap:4px !important;align-items:start !important;background:#fff !important;padding:12px 20px !important;min-height:136px !important;box-sizing:border-box !important;border:0 !important;border-radius:0 !important;text-align:left !important}
  html body main .sct.tp .tp-hub-grp .tp-ic{grid-area:ic !important;align-self:center !important;width:112px !important;height:112px !important;border-radius:8px !important;margin:0 !important}
  html body main .sct.tp .tp-hub-grp .tp-ic svg{width:44px !important;height:44px !important}
  html body main .sct.tp .tp-hub-grp li h3{grid-area:t !important;margin:0 !important;text-transform:none !important;font-size:18px !important;line-height:22px !important;text-align:left !important}
  html body main .sct.tp .tp-hub-grp li p{grid-area:p !important;margin:0 !important;font-size:14px !important;line-height:21px !important;text-align:left !important}
  html body main .sct.tp .tp-hub-grp .tp-go{grid-area:go !important;margin:0 !important;font-size:14px !important;line-height:21px !important;font-weight:700 !important;color:#3b755f !important;text-decoration:underline !important;text-align:left !important}
  html body #main .sct.tp .tp-hub-note{margin-top:24px !important;text-align:center !important}
  html body #main .sct.tp .tp-hub-note > div,html body #main .sct.tp .tp-hub-note > div *{text-align:center !important}
  html body #main .sct.tp .tp-hub-note a.sct-btn{display:flex !important;width:100% !important;min-height:48px !important;box-sizing:border-box !important;align-items:center !important;justify-content:center !important;text-align:center !important;border-radius:6px !important}
  /* PureScent page (phones): hero, section spacing and headings, compare table, known/suspected rows */
  /* soap school jump links: 24px under the hero, 12px between label and buttons and between rows */
  html body #main nav.nh-jl:not(#nh-j1):not(#nh-j2):not(#nh-j3){padding-left:20px !important;padding-right:20px !important;padding-bottom:14px !important;border-top:24px solid transparent !important;border-bottom:2px solid transparent !important}
  html body #main:has(.nh-sg) .shopify-section:not(#nh-j1):not(#nh-j2):not(#nh-j3):has(.nh-trust-badges){border-top:24px solid #f8f8f8 !important;margin-bottom:24px !important}
  html body #main nav.nh-jl ul:not(#nh-j1):not(#nh-j2):not(#nh-j3){display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:12px 8px !important}
  html body #main nav.nh-jl ul>li:not(#nh-j1):not(#nh-j2):not(#nh-j3){margin:0 !important;min-width:0 !important}
  html body #main nav.nh-jl ul>li.nh-jl__lbl:not(#nh-j1):not(#nh-j2):not(#nh-j3){grid-column:1/-1 !important}
  html body #main nav.nh-jl ul>li a:not(#nh-j1):not(#nh-j2):not(#nh-j3){width:100% !important;box-sizing:border-box !important;padding-left:6px !important;padding-right:6px !important;justify-content:center !important;white-space:nowrap !important;min-height:48px !important}
  /* heroes left + full-width buttons; soap school link rows, left headings, help band */
  html body #main :is(.tp-hero,.ps-hero,.pg-hero,.ab-hero,.ct-hero,.nph,.ccf__hero,.crf__hero,.nh-cases-hero,.rcg__head):not(#nh-h1):not(#nh-h2):not(#nh-h3):not(#nh-h4),html body #main :is(.tp-hero,.ps-hero,.pg-hero,.ab-hero,.ct-hero,.nph,.ccf__hero,.crf__hero,.nh-cases-hero,.rcg__head) *:not(#nh-h1):not(#nh-h2):not(#nh-h3):not(#nh-h4){text-align:left !important}
  html body #main :is(.tp-hero,.ps-hero,.pg-hero,.ab-hero,.ct-hero,.nph,.ccf__hero,.crf__hero,.nh-cases-hero,.rcg__head) :is(.sct-eyebrow,.tp-trail,ul,li):not(#nh-h1):not(#nh-h2):not(#nh-h3):not(#nh-h4){justify-content:flex-start !important;text-align:left !important}
  html body #main :is(.pg-btns,.ab-btns,.ps-btns,.crf__btns):not(#nh-h1):not(#nh-h2):not(#nh-h3):not(#nh-h4){display:flex !important;flex-direction:column !important;align-items:stretch !important;justify-content:flex-start !important;gap:12px !important;width:100% !important}
  html body #main :is(.pg-hero a.pg-btn,.ab-hero a.ab-btn,.ps-hero a.ps-btn,.ct-hero a.nh-ct-jump,.nph a.sct-btn,.ccf__hero :is(a,button).ccf__btn,.crf__hero .crf__btn,.tp-hero :is(.tp-btn,a.sct-btn),.nh-cases-hero :is(.rcg__btn,a.sct-btn)):not(#nh-h1):not(#nh-h2):not(#nh-h3):not(#nh-h4){display:flex !important;width:100% !important;max-width:none !important;min-height:48px !important;box-sizing:border-box !important;align-items:center !important;justify-content:center !important;text-align:center !important;margin-left:0 !important;margin-right:0 !important}
  html body #main :is(.nh-tb ul,.nh-sg__card ul:not(.nh-sg__chips)):not(#nh-s1):not(#nh-s2):not(#nh-s3){gap:0 !important;row-gap:0 !important}
  html body #main :is(.nh-tb li,.nh-sg__card ul:not(.nh-sg__chips) > li):not(#nh-s1):not(#nh-s2):not(#nh-s3){margin:0 !important;padding:0 !important}
  html body #main :is(.nh-tb li > a,.nh-sg__card ul:not(.nh-sg__chips) > li > a):not(#nh-s1):not(#nh-s2):not(#nh-s3){display:flex !important;align-items:center !important;min-height:44px !important;box-sizing:border-box !important}
  html body #main :is(.nh-tb__head,.nh-tb__head > *,.nh-sg__head,.nh-sg__head > *,.nh-help__title,.nh-help__sub,.nh-help__toolsttl,.nh-help__cases):not(#nh-s1):not(#nh-s2):not(#nh-s3){text-align:left !important;justify-content:flex-start !important}
  html body #main .nh-help :is(.nh-help__grid,.nh-help__tools,.nh-help__cases):not(#nh-s1):not(#nh-s2):not(#nh-s3){margin-top:24px !important;margin-bottom:0 !important}
  html body #main .nh-help .nh-help__cases ~ .nh-help__cases:not(#nh-s1):not(#nh-s2):not(#nh-s3){margin-top:12px !important}
  html body #main .nh-help .nh-help__sub:not(#nh-s1):not(#nh-s2):not(#nh-s3){margin-bottom:0 !important}
  html body #main .nh-help .nh-help__tools:not(#nh-s1):not(#nh-s2):not(#nh-s3){display:block !important}
  html body #main .nh-help .nh-help__tools > .nh-help__toolsttl:not(#nh-s1):not(#nh-s2):not(#nh-s3){margin:0 0 8px !important}
  html body #main .nh-help ul.nh-help__toollist:not(#nh-s1):not(#nh-s2):not(#nh-s3){display:grid !important;grid-template-columns:1fr 1fr !important;gap:8px !important;margin:0 !important;padding:0 !important;list-style:none !important}
  html body #main .nh-help ul.nh-help__toollist > li:not(#nh-s1):not(#nh-s2):not(#nh-s3){margin:0 !important;padding:0 !important;min-width:0 !important;min-height:48px !important}
  html body #main .nh-help ul.nh-help__toollist > li:last-child:not(#nh-s1):not(#nh-s2):not(#nh-s3){grid-column:1 / -1 !important}
  html body #main .nh-help ul.nh-help__toollist > li > a:not(#nh-s1):not(#nh-s2):not(#nh-s3){display:flex !important;align-items:center !important;justify-content:center !important;text-align:center !important;width:100% !important;height:100% !important;min-height:48px !important;box-sizing:border-box !important;margin:0 !important}
  html body main .ps-hero .ps-wrap{text-align:center !important}
  html body main .ps-hero h1.h1{font-size:30.24px !important;text-align:center !important}
  html body main .ps-hero a.sct-eyebrow{display:flex !important;justify-content:center !important;width:100% !important;box-sizing:border-box !important}
  html body main .ps-hero p{text-align:center !important}
  html body main .ps-hero .ps-btns{display:flex !important;flex-direction:column !important;gap:12px !important}
  html body main .ps-hero a.ps-btn{display:flex !important;width:100% !important;min-height:48px !important;box-sizing:border-box !important;align-items:center !important;justify-content:center !important;margin:0 !important;border-radius:6px !important}
  html body main .ps-sec{padding-top:24px !important}
  html body main .ps-sec.ps-sec--tint{padding-top:24px !important;padding-bottom:24px !important}
  html body main .ps-sec h2.h2{font-size:24px !important;line-height:1.2 !important;text-align:center !important;margin-bottom:16px !important}
  html body main .ps-sec .ps-kicker{text-align:center !important}
  html body main .ps-table{overflow:visible !important;border:0 !important;width:100% !important}
  html body main .ps-table table{width:100% !important;table-layout:fixed !important;border-collapse:collapse !important}
  html body main .ps-table th,html body main .ps-table td{padding:12px 8px !important;border:0 !important;font-size:14px !important;line-height:20px !important;text-align:center !important;vertical-align:middle !important}
  html body main .ps-table th:first-child,html body main .ps-table td:first-child{width:52% !important;text-align:left !important}
  html body main .ps-table th:not(:first-child),html body main .ps-table td:not(:first-child){width:24% !important}
  html body main .ps-table tbody tr:nth-child(even) td{background:#eff5f1 !important}
  html body main .ps-table tbody tr:nth-child(odd) td{background:#fff !important}
  html body main .ps-ks__row{grid-template-columns:minmax(0,1fr) !important;row-gap:4px !important}
  /* PureScent spacing: 16px heading to content, 24px between blocks and sections */
  html body main .ps-hero{padding-top:32px !important;padding-bottom:32px !important}
  html body main .ps-hero a.sct-eyebrow{margin:0 0 16px !important}
  html body main .ps-hero h1.h1{margin:0 0 16px !important}
  html body main .ps-hero p.ps-lead{margin:0 0 16px !important}
  html body main .ps-hero p.ps-sub{margin:0 0 24px !important}
  html body main .ps-hero .ps-btns{margin:0 !important}
  html body main .ps-hero .ps-wrap,html body main .ps-sec .ps-tiers > *{row-gap:0 !important}
  html body main .ps-sec:not(.ps-sec--tint){padding-bottom:24px !important}
  html body main .ps-sec:not(.ps-sec--tint) + .ps-sec:not(.ps-sec--tint){padding-top:0 !important}
  html body main .ps-sec:has(.ps-cta){padding-bottom:0 !important}
  html body main .ps-sec .ps-head{margin-bottom:24px !important}
  html body main .ps-sec .ps-grid + .ps-more{margin-top:24px !important}
  html body main .ps-sec .ps-grid,html body main .ps-sec .ps-rel{gap:8px !important}
  html body main .ps-sec .ps-steps{gap:24px !important}
  html body main .ps-sec .ps-tiers > * > *{margin-top:0 !important;margin-bottom:0 !important}
  html body main .ps-sec .ps-tiers > * > * + *{margin-top:16px !important}
  html body main .ps-sec .ps-cta{margin-top:24px !important}
  /* PureScent buttons: full width 48px */
  html body #main .ps-hero .ps-btns{width:100% !important;align-self:stretch !important}
  html body #main .ps-hero .ps-wrap{align-items:stretch !important}
  /* PureScent page: sections become an accordion on phones (same look as the product page parts) */
  html.ps-acc-on body main .ps-jump{display:none !important}
  html.ps-acc-on body main .ps-sec .ps-kicker{display:none !important}
  html.ps-acc-on body main .ps-sec,html.ps-acc-on body main .ps-sec.ps-sec--tint,html.ps-acc-on body main .ps-sec:not(.ps-sec--tint),html.ps-acc-on body main .ps-sec:not(.ps-sec--tint) + .ps-sec:not(.ps-sec--tint){padding:0 20px !important;margin:0 0 8px !important;background:#fff !important;border:0 !important}
  html.ps-acc-on body main .ps-sec .ps-wrap{padding:0 !important}
  html.ps-acc-on body main .ps-sec.ps-open .ps-wrap{padding-bottom:20px !important}
  html.ps-acc-on body main .ps-sec:not(.ps-open) .ps-panel{display:none !important}
  html.ps-acc-on body main .ps-sec:not(.ps-open) .ps-head{margin-bottom:0 !important}
  html.ps-acc-on body main .ps-sec .ps-head:has(+ .ps-panel){margin-bottom:0 !important}
  html.ps-acc-on body main .ps-sec h2:has(> button.ps-acc__h){margin:0 !important;text-align:left !important;font-size:16px !important;line-height:20.8px !important;font-family:"Roboto Condensed",sans-serif !important;font-weight:400 !important;text-transform:none !important;letter-spacing:0 !important;color:#444 !important}
  html.ps-acc-on body main .ps-sec.ps-open h2:has(> button.ps-acc__h){margin-bottom:0 !important}
  html.ps-acc-on body main button.ps-acc__h{display:flex !important;width:100% !important;justify-content:space-between !important;align-items:center !important;gap:12px !important;min-height:58px !important;padding:0 !important;background:transparent !important;border:0 !important;font:inherit !important;color:inherit !important;text-align:left !important;cursor:pointer}
  html.ps-acc-on body main .ps-acc__i::before{content:"+";color:#3b755f;font-size:26px;font-weight:700;line-height:26px;font-family:"Roboto Condensed",sans-serif}
  html.ps-acc-on body main .ps-sec.ps-open .ps-acc__i::before{content:"\2212"}
  html.ps-acc-on body main .ps-sec.ps-open .ps-wrap:has(> .ps-panel > .nh-bleed:last-child){padding-bottom:0 !important}
  html.ps-acc-on body main .sct.ps{background:#f3f7f5 !important}
  html.ps-acc-on body main .ps-hero{margin-bottom:20px !important}
  html.ps-acc-on body main .sct.ps > .ps-cta{margin:20px 0 0 !important;width:100% !important;max-width:none !important;border-radius:0 !important;box-shadow:none !important}
  html.ps-acc-on body main .sct.ps{padding-bottom:0 !important}
  /* FAQ pages (Fragrance Oil, Mica Powder, Lye Safety, Bath Bomb Colorant): same look as the collection FAQ and the PureScent accordion */
  html body #main .nfq-rail{display:none !important}
  html body #main .sct.container.nfq{padding-top:0 !important}
  /* Rewards page: 24px between sections, 24px inside bands, 16px heading to content */
  html body #main .sct.pg .pg-wrap.pg-block{padding-top:24px !important;padding-bottom:0 !important}
  html body #main .sct.pg .pg-head{margin-bottom:16px !important}
  html body #main .sct.pg .pg-note{margin-top:24px !important}
  html body #main .sct.pg .pg-end{margin-top:24px !important;padding-top:24px !important;padding-bottom:24px !important}
  /* Rewards hero stats: same tiles as the bundle pages (three in a row, dark translucent, thin light outline) */
  html body #main .sct.pg .pg-stats{display:grid !important;grid-template-columns:minmax(0,1fr) !important;gap:8px !important;list-style:none !important;margin:0 !important;padding:0 !important}
  html body #main .sct.pg .pg-stats > .pg-stat{min-width:0 !important;min-height:64px !important;display:flex !important;flex-direction:row !important;align-items:center !important;justify-content:flex-start !important;gap:12px !important;text-align:left !important;padding:12px 16px !important;background:rgba(0,0,0,.18) !important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.3) !important;color:#fff !important;border-radius:12px !important}
  html body #main .sct.pg .pg-stats > .pg-stat small{display:none !important}
  html body #main .sct.pg .pg-stats > .pg-stat strong{flex:0 0 60px !important;width:60px !important;margin:0 !important;font-size:28px !important;font-family:Antonio,sans-serif !important;font-weight:700 !important;line-height:30px !important;color:#fff !important;text-align:center !important}
  html body #main .sct.pg .pg-stats > .pg-stat span{flex:1 1 auto !important;min-width:0 !important;margin:0 !important;padding:0 !important;align-self:center !important;font-size:16px !important;line-height:21px !important;color:#fff !important;text-align:left !important}
  /* Page headings: fixed sizes (title 30.24px, section heading 24px) */
  html body #main .sct.pg .pg-hero h1,html body #main .sct.pg h1.h1{font-size:30.24px !important;line-height:33.264px !important;letter-spacing:-.3024px !important}
  html body #main .sct.ab h1.h1,html body #main .sct.ct h1.h1{font-size:30.24px !important;line-height:33.264px !important;letter-spacing:-.3024px !important}
  html body #main .sct.ab h2.h2,html body #main .sct.ct h2.h2{font-size:24px !important;line-height:28.8px !important;letter-spacing:-.24px !important}
  html body #main .sct.ct .ct-quick h3,html body #main .sct.ct .ct-quick h4{font-family:Anton,sans-serif !important;font-weight:400 !important;font-size:24px !important;line-height:28.8px !important;letter-spacing:-.24px !important}
  html body #main .sct.ct .ct-form__foot{justify-content:center !important}
  html body #main .sct.ct .ct-form__foot > p{width:100% !important;max-width:none !important;margin-left:0 !important;margin-right:0 !important;text-align:center !important}
  html body #main .sct.ct .ct-wrap.ct-body{padding-top:24px !important;padding-bottom:24px !important;gap:24px !important;row-gap:24px !important}
  html body #main .sct.ct .ct-info h2.h2{margin-bottom:16px !important}
  html body #main .sct.ct .ct-info .ct-quick{margin-top:24px !important}
  html body #main .sct.ct .ct-info .ct-policies{margin-top:24px !important}
  html body #main .sct.ct h2.h2,html body #main .sct.ct .ct-quick h3,html body #main .sct.ct .ct-quick h4,html body #main .nh-help h2.nh-help__title{font-family:Antonio,Anton,sans-serif !important;font-weight:700 !important;font-size:24px !important;line-height:28.8px !important;letter-spacing:.24px !important}
  html body:has(#main .sct.ct .ct-form) #main .nh-trust-badges{padding-top:24px !important}
  /* Compliance pages (.sct-art standard page, Carrie Nov 6): 24px between blocks, 16px heading to content, 24px band to trust badges. */
  html body #main .sct-art .sct-layout .sct-body > :first-child:not(#nh-x),html body #main .sct-art .sct-layout > :first-child:not(#nh-x){margin-top:0 !important}
  html body #main .sct-art .sct-body > h2:not(#nh-x){margin-bottom:16px !important}
  html body #main .sct-art .sct-body > h2 + *:not(#nh-x){margin-top:0 !important}
  html body #main .sct-art > .stp-more:not(#nh-x){margin-top:24px !important}
  html body #main .sct-art > .stp-more > h2:not(#nh-x){margin-bottom:16px !important}
  html body #main .sct-art > .sct-cta:not(#nh-x){margin-top:24px !important}
  html body:has(#main .sct-art > .sct-cta) #main .nh-trust-badges{padding-top:24px !important}
  html body #main .sct-art > .sct-banner:has(+ .sct-layout > .sct-body > .nh-bleed:first-child):not(#nh-x){margin-bottom:0 !important}
  html body #main .sct-art .sct-body > .stp-sum:not(#nh-x){padding-top:24px !important;padding-bottom:24px !important}
  /* FAQ pages (Carrie Nov 6): equal 24px above and below "More FAQs". */
  html body #main .nfq-more:not(#nh-x){margin-top:24px !important}
  html body #main .sct-cta.nfq-cta:not(#nh-x){margin-top:24px !important}
  /* PureScent reference pages (Carrie Nov 6): the 3-column "Excluded / Examples / Why" table becomes our FAQ accordion on phones. */
  html body #main .sct-art .ps-ref-scroll.nh-xacc-src{display:none !important}
  html body #main .sct-art .nh-xacc{display:flex;flex-direction:column;gap:8px;background:#f3f7f5;padding:20px 0;margin:0 -20px !important;width:auto}
  html body #main .sct-art .sct-body > h2 + .nh-xacc{margin-top:0 !important}
  html body #main .sct-art .nh-xacc + *{margin-top:24px !important}
  html body #main .sct-art .nh-xacc:not(#nh-x){padding-top:0 !important;padding-bottom:0 !important}
  html body #main .sct-art .sct-body > h2:has(+ .nh-xacc-src + .nh-xacc):not(#nh-x){background:#f8f8f8;margin-left:-20px !important;margin-right:-20px !important;margin-bottom:0 !important;padding:19px 20px 21px !important}
  html body #main .sct-art .nh-xacc__item{background:#fff;border-radius:0;margin:0}
  html body #main .sct-art .nh-xacc__q{margin:0 !important;font:inherit !important;letter-spacing:0 !important;text-transform:none !important}
  html body #main .sct-art .nh-xacc__q button{all:unset;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:58px;padding:10px 20px;cursor:pointer;font-family:"Roboto Condensed",sans-serif;font-size:16px;line-height:20.8px;font-weight:700;color:#444;text-align:left}
  html body #main .sct-art .nh-xacc__q button:focus-visible{outline:2px solid #3b755f;outline-offset:-2px}
  html body #main .sct-art .nh-xacc__i{flex:none;font-size:26px;line-height:1;font-weight:700;color:#3b755f}
  html body #main .sct-art .nh-xacc__a{padding:0 20px 20px;margin:0}
  html body #main .sct-art .nh-xacc__item:not(.is-open) .nh-xacc__a{display:none}
  html body #main .sct-art .nh-xacc__lbl{margin:0 0 4px !important;font-family:"Roboto Condensed",sans-serif;font-size:12px;line-height:16px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#3b755f}
  html body #main .sct-art .nh-xacc__t{margin:0 !important;font-size:16px;line-height:24px;color:#444}
  html body #main .sct-art .nh-xacc__t + .nh-xacc__lbl{margin-top:12px !important}
  html body #main .sct-art .sct-body > p + p:not(#nh-x){margin-top:12px !important}
  html body:has(#main .sct-art > .sct-cta) #main .nh-trust-badges,html body:has(#main .sct.ct .ct-form) #main .nh-trust-badges{padding-bottom:24px !important}




  html body #main .ccf__hero:not(#nh-x):not(#nh-y){padding-top:32px !important;padding-bottom:32px !important}
  html body #main .ccf__hero .ccf__art:not(#nh-x):not(#nh-y){display:none !important}
  html body #main .ccf__row input::placeholder{font-size:15px !important}
  html body #main .section-stack__intro h2:not(#nh-x):not(#nh-y):not(#nh-z):not(#nh-w):not(#nh-v):not(#nh-u){font-family:Antonio,Anton,sans-serif !important;font-weight:700 !important}
  html body #main h2.h2:not(#nh-x):not(#nh-y):not(#nh-z):not(#nh-w):not(#nh-v):not(#nh-u),html body #main h2.ch-explore-h:not(#nh-x):not(#nh-y):not(#nh-z):not(#nh-w):not(#nh-v):not(#nh-u),html body #main h2.cf-title:not(#nh-x):not(#nh-y):not(#nh-z):not(#nh-w):not(#nh-v):not(#nh-u),html body #main h2.nh-ant-sm:not(#nh-x):not(#nh-y):not(#nh-z):not(#nh-w):not(#nh-v):not(#nh-u){font-family:Antonio,Anton,sans-serif !important;font-weight:700 !important}
  html body #main h2:not(.accordion-box *):not(details *):not(summary *):not(button *):not(.ps-head *):not(.nfq-cards *):not(.rcg__card *):not([class*=product-card] *):not(.cf-title):not(#nh-a):not(#nh-b):not(#nh-c):not(#nh-d):not(#nh-e):not(#nh-f):not(#nh-g):not(#nh-h){font-family:Antonio,Anton,sans-serif !important;font-weight:700 !important;font-size:22px !important;line-height:26.4px !important;letter-spacing:.2px !important;text-transform:none !important}
  html body #main h3:not(.accordion-box *):not(details *):not(summary *):not(button *):not(.ps-head *):not(.nfq-cards *):not(.rcg__card *):not([class*=product-card] *):not(.cf-title):not(#nh-a):not(#nh-b):not(#nh-c):not(#nh-d):not(#nh-e):not(#nh-f):not(#nh-g):not(#nh-h){font-family:Antonio,Anton,sans-serif !important;font-weight:700 !important;font-size:18px !important;line-height:21.6px !important;letter-spacing:.2px !important;text-transform:none !important}
  html body #main h4:not(.accordion-box *):not(details *):not(summary *):not(button *):not(.ps-head *):not(.nfq-cards *):not(.rcg__card *):not([class*=product-card] *):not(.cf-title):not(#nh-a):not(#nh-b):not(#nh-c):not(#nh-d):not(#nh-e):not(#nh-f):not(#nh-g):not(#nh-h){font-family:Antonio,Anton,sans-serif !important;font-weight:700 !important;font-size:16px !important;line-height:19.2px !important;letter-spacing:.2px !important;text-transform:none !important}
  html body #main h5:not(.accordion-box *):not(details *):not(summary *):not(button *):not(.ps-head *):not(.nfq-cards *):not(.rcg__card *):not([class*=product-card] *):not(.cf-title):not(#nh-a):not(#nh-b):not(#nh-c):not(#nh-d):not(#nh-e):not(#nh-f):not(#nh-g):not(#nh-h),html body #main h6:not(.accordion-box *):not(details *):not(summary *):not(button *):not(.ps-head *):not(.nfq-cards *):not(.rcg__card *):not([class*=product-card] *):not(.cf-title):not(#nh-a):not(#nh-b):not(#nh-c):not(#nh-d):not(#nh-e):not(#nh-f):not(#nh-g):not(#nh-h){font-family:Antonio,Anton,sans-serif !important;font-weight:700 !important;font-size:14px !important;line-height:16.8px !important;letter-spacing:.2px !important;text-transform:none !important}
  html body #main .nh-sq__card h2:not(#nh-x):not(#nh-y):not(#nh-z):not(#nh-w){font-family:Antonio,Anton,sans-serif !important;font-weight:700 !important;font-size:24px !important;line-height:28.8px !important;letter-spacing:.2px !important;text-transform:none !important}
  html body #main .nh-sq__count:not(#nh-x):not(#nh-y):not(#nh-z){text-transform:none !important;letter-spacing:0 !important;font-size:14px !important;line-height:20px !important;margin-bottom:8px !important}
  html body #main .nh-sq__bar:not(#nh-x):not(#nh-y):not(#nh-z){margin-bottom:16px !important}
  html body #main .nh-sq__opts:not(#nh-x):not(#nh-y):not(#nh-z){gap:8px !important}
  html body #main .nh-sq__opt:not(#nh-x):not(#nh-y):not(#nh-z){min-height:74px !important;display:flex !important;align-items:center !important}
  html body #main .nh-sq__nav:not(#nh-x):not(#nh-y):not(#nh-z){display:flex !important;flex-direction:column-reverse !important;align-items:stretch !important;justify-content:flex-start !important;gap:16px !important;margin-top:16px !important}
  html body #main .nh-sq__nav .nh-sq__btn:not(#nh-x):not(#nh-y):not(#nh-z){width:100% !important;min-height:48px !important}
  html body #main .nh-sq__nav .nh-sq__link:not(#nh-x):not(#nh-y):not(#nh-z){align-self:center !important;width:auto !important}
  html body #main .nh-sq__nav .nh-sq__link[style*="hidden"]:not(#nh-x):not(#nh-y):not(#nh-z):not(#nh-w){display:none !important}
  html body #main .ccf__steps:not(#nh-x):not(#nh-y):not(#nh-z){margin-top:27px !important;gap:8px !important}
  html body #main .ccf__steps > li:not(#nh-x):not(#nh-y):not(#nh-z){display:grid !important;grid-template-columns:36px 1fr !important;column-gap:12px !important;row-gap:2px !important;align-items:start !important;padding:16px !important;background:#fff !important;border-radius:8px !important;box-shadow:0 2px 8px rgba(0,0,0,.08) !important;height:auto !important}
  html body #main .ccf__steps > li > .ccf__num:not(#nh-x):not(#nh-y):not(#nh-z){grid-row:1 / span 2 !important;width:36px !important;height:36px !important;margin:0 !important;font-size:18px !important}
  html body #main .ccf__steps > li > strong:not(#nh-x):not(#nh-y):not(#nh-z){grid-column:2 !important;font-size:17px !important;line-height:22px !important;margin:0 !important}
  html body #main .ccf__steps > li > span:not(.ccf__num):not(#nh-x):not(#nh-y):not(#nh-z){grid-column:2 !important;font-size:15px !important;line-height:22px !important;margin:0 !important}
  html body #main h2.ccf__h2:not(#nh-x):not(#nh-y):not(#nh-z):not(#nh-w):not(#nh-v){font-family:Antonio,Anton,sans-serif !important;font-weight:700 !important;font-size:24px !important;line-height:28.8px !important;letter-spacing:.2px !important;text-transform:none !important}
  html body #main .ccf__part-h h3:not(#nh-x):not(#nh-y):not(#nh-z):not(#nh-w):not(#nh-v){font-size:20px !important;line-height:22px !important;text-transform:none !important}
  html body #main .ccf__part:not(:first-of-type):not(#nh-x):not(#nh-y){padding-top:24px !important}
  html body #main .ccf__part:not(#nh-x):not(#nh-y){padding-bottom:24px !important}
  html body #main .ccf__final:not(#nh-x):not(#nh-y){padding-top:24px !important}
  html body #main .ccf__radios:not(#nh-x):not(#nh-y):not(#nh-z):not(#nh-w):not(#nh-v){display:grid !important;grid-template-columns:1fr !important;gap:8px !important}
  html body #main .ccf__radios > label:not(#nh-x):not(#nh-y):not(#nh-z):not(#nh-w):not(#nh-v),html body #main .ccf__radios > label:has(input:checked):not(#nh-x):not(#nh-y):not(#nh-z):not(#nh-w):not(#nh-v):not(#nh-u){border:0 !important;border-radius:0 !important;background:transparent !important;box-shadow:none !important;padding:0 !important;min-height:36px !important;height:auto !important;width:100% !important;gap:12px !important;color:#444 !important;display:flex !important;align-items:center !important;justify-content:flex-start !important;font-size:16px !important;line-height:20px !important}
  html body #main .ccf__radios > label > input:not(#nh-x):not(#nh-y):not(#nh-z):not(#nh-w):not(#nh-v){position:static !important;opacity:1 !important;width:22px !important;height:22px !important;min-width:22px !important;margin:0 !important;flex:none !important;appearance:auto !important;-webkit-appearance:radio !important;accent-color:#3b755f !important;clip:auto !important;pointer-events:auto !important}
  html body #main .ccf__radios > label:not(#nh-x):not(#nh-y):not(#nh-z):not(#nh-w):not(#nh-v)::before,html body #main .ccf__radios > label:not(#nh-x):not(#nh-y):not(#nh-z):not(#nh-w):not(#nh-v)::after{content:none !important;display:none !important}
  html body #main .ccf__radios > label:has(input:focus-visible):not(#nh-x):not(#nh-y):not(#nh-z):not(#nh-w):not(#nh-v){outline:2px solid #3b755f !important;outline-offset:2px !important}





  html body #main .sct.pg .pg-head h2,html body #main .sct.pg h2.h2,html body #main .sct.pg .pg-end h2{font-size:24px !important;line-height:28.8px !important;letter-spacing:-.24px !important}
  /* Rewards hero text and buttons: same sizes as the PureScent hero */
  html body #main .sct.pg .pg-hero .pg-lead,html body #main .sct.pg .pg-hero .pg-sub{font-size:18px !important;line-height:27px !important;font-weight:400 !important}
  html body #main .sct.pg .pg-hero a.pg-btn{font-size:16px !important;line-height:19.2px !important}
  /* Rewards FAQ (pg-faq): same look as the other FAQs */
  html body #main .sct.pg .pg-faq.nh-acc{padding:20px 0 !important;gap:8px !important;row-gap:8px !important}
  html body #main .sct.pg .pg-faq.nh-acc > .pg-q.pg-q,html body #main .sct.pg .pg-faq.nh-acc > .pg-q.is-open{border-radius:0 !important;padding:0 20px !important;box-shadow:none !important;outline:0 !important;border:0 !important;background:#fff !important}
  html body #main .sct.pg .pg-faq.nh-acc .pg-q .nh-acc-btn{display:flex !important;align-items:center !important;min-height:58px !important;padding-right:36px !important}
  html body #main .sct.pg .pg-faq.nh-acc .pg-q > h3,html body #main .sct.pg .pg-faq.nh-acc .pg-q .nh-acc-btn{font-size:16px !important;line-height:20.8px !important;font-weight:400 !important;color:#444 !important;margin:0 !important}
  html body #main .sct.pg .pg-faq.nh-acc .pg-q > .prose{margin-top:0 !important;padding-bottom:20px !important}
  html body #main .nfq-cards.nh-acc{padding:20px 0 !important;gap:8px !important;row-gap:8px !important}
  html body #main .nfq-cards.nh-acc > .nfq-card.nfq-card,html body #main .nfq-cards.nh-acc > .nfq-card.is-open{border-radius:0 !important;padding:0 20px !important;box-shadow:none !important;outline:0 !important;border:0 !important;background:#fff !important}
  html body #main .nfq-cards.nh-acc .nfq-q{min-height:58px !important;align-items:center !important;padding:0 30px 0 0 !important}
  html body #main .nfq-cards.nh-acc .nfq-num{display:none !important}
  html body #main .nfq-cards.nh-acc .nfq-card .nfq-q h2{font-size:16px !important;line-height:20.8px !important;font-weight:400 !important;margin:0 !important;font-family:"Roboto Condensed",sans-serif !important;text-transform:none !important;letter-spacing:0 !important;color:#444 !important}
  html body #main .nfq-cards.nh-acc .nfq-card .nfq-a{margin-top:0 !important;padding-bottom:20px !important}
  html body #main .ps-hero a.ps-btn,html body #main .ps-sec a.ps-btn,html body #main .ps-sec .ps-cta a.sct-btn,html body #main .ps-cta a.sct-btn{display:flex !important;width:100% !important;max-width:none !important;min-height:48px !important;box-sizing:border-box !important;align-items:center !important;justify-content:center !important;text-align:center !important;margin-left:0 !important;margin-right:0 !important}
  html body #main .collection__results .product-list product-card{contain-intrinsic-size:auto 112px !important}
  html body #main .shopify-section--main-search product-list product-card{contain-intrinsic-size:auto 136px !important}
  html body #main .shopify-section--main-search{min-height:90vh}
  html body #main:has(.shopify-section--main-search):not(:has(.shopify-section--main-search search-result-panel *)) .shopify-section-group-footer-group{visibility:hidden}
  html body #main .product-info [data-block-type="payment-terms"]:has(shopify-payment-terms){min-height:26px}
  html body facet-floating-filter button.button{min-height:48px !important;height:48px !important;padding-top:0 !important;padding-bottom:0 !important}
  html body #main .ac-band .sct-eyebrow,html body #main .ac-filter label{text-transform:none !important;letter-spacing:normal !important}
  html body #main .ac-filter input{height:48px !important;min-height:48px !important;box-sizing:border-box !important}
  html body #main .ac-jump a{min-height:48px !important;display:inline-flex !important;align-items:center !important;box-sizing:border-box !important}
  html body #main .ac-head a{text-decoration:underline !important;font-weight:700 !important;color:#3b755f !important}
  html body #main .ac-grid{grid-template-columns:minmax(0,1fr) !important;gap:12px !important}
  html body #main .ac-grid > li{margin:0 !important;border:0 !important;background:none !important;box-shadow:none !important}
  html body #main .ac-grid > li > a{display:flex !important;flex-direction:row !important;align-items:center !important;gap:12px !important;border:0 !important;background:none !important;box-shadow:none !important;border-radius:0 !important;padding:0 !important;text-decoration:none !important}
  html body #main .ac-grid .ac-card__img{flex:0 0 72px !important;width:72px !important;height:72px !important;box-sizing:border-box !important;border:1px solid rgba(68,68,68,.12) !important;border-radius:12px !important;overflow:hidden !important;display:block !important}
  html body #main .ac-grid .ac-card__img img{width:70px !important;height:70px !important;object-fit:cover !important;border-radius:11px !important;display:block !important;aspect-ratio:auto !important}
  html body #main .ac-grid .ac-card__text{flex:1 1 auto !important;min-width:0 !important;padding:0 !important;display:block !important}
  html body #main .ac-grid .ac-card__text strong{display:block !important;font-size:14px !important;font-weight:700 !important;line-height:21px !important;color:#444 !important}
  html body #main .ac-grid .ac-card__text span{display:block !important;font-size:13px !important;line-height:1.3 !important;color:rgba(68,68,68,.88) !important}
  html body #main .ac-band{padding-bottom:24px !important}
  html body #main .ac-body .ac-group{margin-top:24px !important}
  html body #main .ac-grid .ac-card__img:not(:has(img)){display:flex !important;align-items:center !important;justify-content:center !important;font-size:32px !important;line-height:1 !important;text-align:center !important;padding:0 !important}
  /* Bundle pages (Nov 6, v2): list of products, Narrow it down card, calmer progress block, compact bundle bar */
  html body .nh-sbb{padding-top:0 !important;padding-bottom:96px !important}
  html body .nh-sbb .nh-sbb__progress{background:none;padding:0;margin:18px 0 24px !important}
  html body .nh-sbb .nh-sbb__progress-label,html body .nh-sbb .nh-sbb__progress-track{display:none !important}
  html body .nh-sbb .nh-sbb__size-note{font-size:14px;line-height:21px;color:#444;margin:0 !important;text-align:center}
  html body .nh-sbb .nh-sbb__btn{height:48px !important;min-height:48px}
  html body .nh-sbb .nh-sbb__btn--accent,html body .nh-sbb #nh-sbb-next{background:#3b755f}
  html body .nh-sbb .nh-sbb__btn--ghost{height:48px !important}
  html body .nh-sbb .nh-sbb__bar{max-height:60vh}
  html body .nh-sbb .nh-sbb__bar-progress{justify-content:space-between;gap:8px;padding:0 0 0 16px;min-height:48px;font-size:14px;line-height:20px}
  html body .nh-sbb .nh-sbb__bar-progress span{text-align:left;padding:14px 0}
  html body .nh-sbb .nh-sbb__bar-toggle:not(:focus-visible){outline:0 !important;box-shadow:none !important}
  html body .nh-bn{border-bottom:0 !important}
  html body .nh-sbb .nh-sbb__bar-toggle{height:48px;min-width:48px;padding:0 16px;background:transparent;border-radius:0;font-size:14px;text-decoration:underline}
  html body .nh-sbb .nh-sbb__bar-items{padding:12px 16px 0}
  html body .nh-sbb .nh-sbb__bar-item-info .title{font-size:14px;line-height:21px}
  html body .nh-sbb .nh-sbb__bar-item-info .size{font-size:13px;line-height:18px;color:#444}
  html body .nh-sbb .nh-sbb__qty button{width:48px;height:48px;border:1px solid #888;border-radius:6px;font-size:20px}
  html body .nh-sbb .nh-sbb__qty span{min-width:24px;font-size:16px}
  html body .nh-sbb .nh-sbb__bar-item{display:grid;grid-template-columns:48px minmax(0,1fr) auto;grid-template-areas:"img info qty" "img price qty";column-gap:12px;row-gap:0;align-items:center;padding:0 0 12px;border-bottom:0}
  html body .nh-sbb .nh-sbb__bar-item img{grid-area:img;width:48px;height:48px;box-sizing:border-box;border:1px solid rgba(68,68,68,.12);border-radius:12px;object-fit:cover}
  html body .nh-sbb .nh-sbb__bar-item-info{grid-area:info;align-self:end}
  html body .nh-sbb .nh-sbb__bar-item-price{grid-area:price;align-self:start;width:auto;text-align:left;font-size:14px;line-height:21px;font-weight:700}
  html body .nh-sbb .nh-sbb__qty{grid-area:qty;gap:4px;margin:0}
  html body .nh-sbb .nh-sbb__bar-item-remove{display:none}
  html body .nh-sbb .nh-sbb__bar-footer{gap:12px;padding:12px 16px;border-top:0}
  html body .nh-sbb .nh-sbb__bar-total{margin-left:0;flex:1 1 auto;white-space:normal;font-size:14px;line-height:21px}
  html body .nh-sbb .nh-sbb__bar-clear{min-height:48px;min-width:48px;justify-content:center;font-size:14px;font-weight:700;color:#3b755f;text-decoration:underline}
  html body .nh-sbb .nh-sbb__bar-footer .nh-sbb__btn{padding:0 24px}
  html body .nh-sbb-quickview__close,html body .nh-sbb-filters__close{width:48px;height:48px}
  html body .sct.bp:has(.nh-sbb.is-reviewing) .nh-bn-wrap{display:none}
  html body .sct.bp:has(.nh-sbb.is-reviewing) .bp-hero{padding-bottom:24px !important}
  html body .nh-sbb.is-reviewing{padding-top:18px !important}
  html body .nh-sbb .nh-sbb__review h2.nh-sbb__review-title{margin:0 0 12px;font-size:28px;line-height:32px}
  html body .nh-sbb .nh-sbb__review-intro{margin:0 0 24px;font-size:15px;line-height:22px;color:#444}
  html body .nh-sbb .nh-sbb__review-head{padding:0 0 12px;border-bottom:0;font-size:13px;color:#444}
  html body .nh-sbb .nh-sbb__review-bundle{padding:0 0 12px;border-bottom:0}
  html body .nh-sbb .nh-sbb__review-bundle-info .name{margin:0 0 4px;font-size:16px;line-height:22px}
  html body .nh-sbb .nh-sbb__review-bundle-info .count{margin:0 0 12px;font-size:14px;color:#444}
  html body .nh-sbb .nh-sbb__review-bundle-actions{gap:12px}
  html body .nh-sbb .nh-sbb__review-bundle-actions button{min-height:48px;min-width:88px;padding:0 16px;border:1px solid #3b755f;border-radius:6px;background:#fff;color:#3b755f;font-size:15px;font-weight:700;text-decoration:none}
  html body .nh-sbb .nh-sbb__review-bundle-price{font-size:16px}
  html body .nh-sbb .nh-sbb__review-bundle-head{margin-bottom:16px}
  html body .nh-sbb #nh-sbb-quickview-link{color:#3b755f !important;background:#fff;border:1px solid #3b755f;text-decoration:none}
  html body .nh-sbb #nh-bn-qv-add{width:100%;color:#fff;background:#3b755f}
  html body .nh-sbb .nh-sbb__empty{padding:24px 16px;font-size:15px;line-height:22px;color:#444}
  html body .nh-sbb .nh-sbb__review-line{padding:0 0 12px !important;gap:12px}
  html body .nh-sbb .nh-sbb__review-line img{width:48px;height:48px;box-sizing:border-box;border:1px solid rgba(68,68,68,.12);border-radius:12px}
  html body .nh-sbb .nh-sbb__review-line-info .title{font-size:14px;line-height:21px;color:#444}
  html body .nh-sbb .nh-sbb__review-line-info .size{font-size:13px;line-height:18px;color:#444}
  html body .nh-sbb .nh-sbb__review-line-qty{font-size:14px;color:#444}
  html body .nh-sbb .nh-sbb__review-line-price{width:auto;min-width:56px;font-size:14px;font-weight:700}
  html body .nh-sbb .nh-sbb__summary{padding:12px 0 0}
  html body .nh-sbb .nh-sbb__summary h2{margin:0 0 12px;font-size:22px;line-height:26px}
  html body .nh-sbb .nh-sbb__summary-row{padding:6px 0;font-size:15px}
  html body .nh-sbb .nh-sbb__summary-row.total{border-top:0;margin-top:6px;padding-top:6px;font-size:17px}
  html body .nh-sbb .nh-sbb__summary-note{margin:12px 0 0 !important;font-size:14px !important;line-height:21px;color:#444 !important}
  html body .nh-sbb .nh-sbb__discount-reminder{margin:16px 0 0}
  html body .nh-sbb .nh-sbb__discount-reminder p{padding:12px 16px;font-size:15px;line-height:21px}
  html body .nh-sbb .nh-sbb__review-actions{flex-direction:column-reverse;flex-wrap:nowrap;justify-content:flex-start;gap:12px;margin-top:24px}
  html body .nh-sbb .nh-sbb__review-actions .nh-sbb__btn{width:100%}
  html body .nh-sbb #nh-sbb-add-to-cart{background:#3b755f}
  html body .nh-sbb #nh-sbb-new-bundle{background:#fff;color:#3b755f;border:1px solid #3b755f}
  html body .nh-sbb .nh-sbb__controls{display:none !important}
  html body .nh-sbb .nh-sbb__progress{scroll-margin-top:88px}
  html body #nh-sbb .nh-sbb__grid{display:flex !important;flex-direction:column;gap:12px !important;row-gap:12px !important}
  html body .nh-sbb .nh-sbb__card{position:relative;display:grid;grid-template-columns:72px minmax(0,1fr) auto;grid-template-areas:"img title add" "img price add";column-gap:12px;row-gap:0;align-items:center;content-visibility:auto;contain-intrinsic-size:auto 72px}
  html body .nh-sbb .nh-sbb__card.is-hidden{display:none !important}
  html body .nh-sbb .nh-sbb__card-media{display:contents}
  html body .nh-sbb .nh-sbb__card-media img{grid-area:img;width:72px;height:72px;box-sizing:border-box;border:1px solid rgba(68,68,68,.12);border-radius:12px;object-fit:cover;margin:0}
  html body .nh-sbb .nh-sbb__card-title{grid-area:title;align-self:end;margin:0;font-size:14px;line-height:21px;color:#444}
  html body .nh-sbb .nh-sbb__card-price{grid-area:price;align-self:start;margin:0;font-size:13px;line-height:19px;color:rgba(68,68,68,.82)}
  html body .nh-sbb .nh-sbb__card-quickview{position:absolute !important;left:0 !important;top:0 !important;right:auto !important;width:72px !important;height:72px !important;padding:0;background:transparent !important;border-radius:12px !important;color:transparent !important}
  html body .nh-sbb .nh-sbb__card-quickview::before{display:none}
  html body .nh-sbb .nh-sbb__card-add{grid-area:add;position:static !important;opacity:1 !important;transform:none !important;display:inline-flex !important;align-items:center;justify-content:center;gap:6px;width:auto !important;min-width:88px;height:48px !important;padding:0 14px !important;border:1px solid #3b755f !important;border-radius:6px !important;background:#fff !important;color:#3b755f !important;font-family:'Roboto Condensed',sans-serif;font-weight:700;font-size:15px;text-transform:none;letter-spacing:0}
  html body .nh-sbb .nh-sbb__card-add::after{content:"Add"}
  html body .nh-sbb .nh-sbb__card-add.in-bundle{background:#3b755f !important;color:#fff !important}
  html body .nh-sbb .nh-sbb__card-add.in-bundle::after{content:"Added"}
  html body .nh-sbb .nh-sbb__card-add-text{display:none !important}
  html body .nh-sbb .nh-sbb__card-add-icon{display:flex !important;width:auto;height:auto;background:none !important;border-radius:0}
  html body .nh-bn-wrap{position:relative;z-index:2;margin-top:-48px !important}
  html body .nh-bn{background:#fff;border:3px solid #3b755f;border-radius:8px;padding:16px;color:#444;scroll-margin-top:88px}
  html body .nh-bn__toggle{appearance:none;display:flex;align-items:center;gap:12px;width:100%;min-height:48px;margin:0;padding:0;border:0;background:none;text-align:left;font:inherit;color:#444;cursor:pointer}
  html body .nh-bn__icon{flex:none;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:#3b755f;color:#fff}
  html body .nh-bn__icon svg{width:22px;height:22px}
  html body .nh-bn__text{display:flex;flex-direction:column;gap:2px;min-width:0}
  html body .nh-bn__title{margin:0;font-family:'Roboto Condensed',sans-serif;font-size:22px;line-height:1.1;font-weight:700;text-transform:none;letter-spacing:normal}
  html body .nh-bn__sub{font-size:14px;line-height:19px;font-weight:500;color:rgba(68,68,68,.85)}
  html body .nh-bn__sub strong{font-size:16px;color:#3b755f}
  html body .nh-bn__chev{flex:none;display:flex;align-items:center;justify-content:center;width:36px;height:36px;margin-left:auto;border-radius:50%;border:1px solid rgba(68,68,68,.2);color:#3b755f;transition:transform .2s}
  html body .nh-bn__chev svg{width:20px;height:20px}
  html body .nh-bn.is-open .nh-bn__chev{transform:rotate(180deg)}
  html body .nh-bn__search{display:block;box-sizing:border-box;width:100%;height:48px;margin:16px 0 0;padding:0 16px;border:1px solid #888;border-radius:6px;background:#fff;font:inherit;font-size:16px;color:#444}
  html body .nh-bn__body{margin-top:16px}
  html body .nh-bn:not(.is-open) .nh-bn__body{display:none}
  html body .nh-bn__step{margin-top:16px;padding-top:16px;border-top:1px solid rgba(68,68,68,.2)}
  html body .nh-bn__step:first-child{margin-top:0}
  html body .nh-bn__q{display:flex;align-items:center;gap:10px;margin:0 0 12px;font-size:17px;line-height:22px;font-weight:700}
  html body .nh-bn__n{flex:none;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#eff5f1;color:#3b755f;font-size:14px}
  html body .nh-bn__chips{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
  html body .nh-bn__chip{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 14px;border:1px solid rgba(68,68,68,.2);border-radius:999px;background:#fff;color:#444;font:inherit;font-size:15px;font-weight:700;cursor:pointer}
  html body .nh-bn__chip.is-on{background:#3b755f;border-color:#3b755f;color:#fff}
  html body .nh-bn__sw{flex:none;width:16px;height:16px;border-radius:50%;box-shadow:0 0 0 1px rgba(0,0,0,.2)}
  html body .nh-bn__moods{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
  html body .nh-bn__mood{border:1px solid rgba(68,68,68,.2);border-top:4px solid var(--mood);border-radius:12px;padding:12px;background:color-mix(in srgb,var(--mood) 9%,#fff)}
  html body .nh-bn__mood.is-on{box-shadow:0 0 0 2px var(--mood)}
  html body .nh-bn__mood strong{display:block;font-size:15px;line-height:20px}
  html body .nh-bn__mood small{display:block;margin:0 0 8px;font-size:13px;line-height:18px}
  html body .nh-bn__mood .nh-bn__chips{gap:6px}
  html body .nh-bn__mood .nh-bn__chip{min-height:34px;padding:5px 12px;font-size:14px}
  html body .nh-bn__help{display:inline-block;margin:12px 0 0;font-size:14px;font-weight:700;color:#3b755f;text-decoration:underline}
  html body .nh-bn__picks{display:flex;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none}
  html body .nh-bn__pick{display:flex;align-items:center;gap:12px;width:100%;min-height:48px;padding:8px 16px 8px 10px;border:1px solid rgba(68,68,68,.2);border-radius:12px;background:#fff;color:#444;font:inherit;text-align:left;cursor:pointer}
  html body .nh-bn__pick strong{display:block;font-size:15px;line-height:19px}
  html body .nh-bn__pick small{display:block;font-size:13px;line-height:17px;color:rgba(68,68,68,.85)}
  html body .nh-bn__sw2{flex:none;position:relative;width:40px;height:24px;border-radius:999px;background:rgba(68,68,68,.2)}
  html body .nh-bn__sw2::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:transform .2s}
  html body .nh-bn__pick.is-on{border-color:#3b755f;background:#eff5f1}
  html body .nh-bn__pick.is-on .nh-bn__sw2{background:#3b755f}
  html body .nh-bn__pick.is-on .nh-bn__sw2::after{transform:translateX(16px)}
  html body .nh-bn__foot{display:flex;flex-direction:column;gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid rgba(68,68,68,.2)}
  html body .nh-bn__go{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;padding:0 24px;border:0;border-radius:6px;background:#3b755f;color:#fff;font:inherit;font-weight:700;cursor:pointer}
  html body .nh-bn__clear{display:flex;align-items:center;justify-content:center;min-height:48px;margin:0;padding:0;border:0;background:none;color:#3b755f;font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}
  html body .nh-bn__clear[hidden]{display:none}
  /* Nov 6: below-the-list sections (FAQ block, Free help and tools band) on the 24/16/12 rhythm, 48px links */
  html body #get-help.nh-help{padding-top:24px !important;padding-bottom:24px !important}
  html body .nh-help__title{margin-bottom:16px !important}
  html body #main .nh-help h2.nh-help__title:not(#nh-x):not(#nh-y){font-family:Antonio,Anton,sans-serif !important;font-weight:700 !important;font-size:24px !important;line-height:28.8px !important;letter-spacing:.2px !important}
  html body .nh-trust-badges:not(#nh-x):not(#nh-y):not(#nh-z){padding-top:24px !important;padding-bottom:24px !important}
  html body #get-help .nh-help__grid{gap:12px !important;row-gap:12px !important}
  html body .nh-help__toollist li{min-height:48px}
  html body .nh-help__toollist a{min-height:48px;box-sizing:border-box}
  html body .section-boxed:has(.accordion-box){margin-top:24px !important}
  html body .section-boxed:has(.accordion-box) .section-stack__intro .prose h2{margin-bottom:-4px !important}
  html body #main .ch-rail{overflow:visible !important;padding:0 !important;margin:0 !important}
  html body #main .ch-rail .ch-arrow{display:none !important}
  html body #main .ch-tiles{display:grid !important;grid-auto-flow:row !important;grid-template-columns:minmax(0,1fr) !important;grid-auto-columns:auto !important;gap:12px !important;overflow:visible !important;padding:0 !important;margin:0 !important;list-style:none !important;scroll-snap-type:none !important}
  html body #main .ch-tiles > li:nth-child(n+6){display:none !important}
  html body #main .ch-tiles > li{width:auto !important;min-width:0 !important;max-width:none !important;margin:0 !important}
  html body #main .ch-tiles > li > a{display:flex !important;flex-direction:row !important;align-items:center !important;gap:12px !important;text-align:left !important;text-decoration:none !important}
  html body #main .ch-tiles .ch-tile__img{flex:0 0 72px !important;width:72px !important;height:72px !important;display:block !important}
  html body #main .ch-tiles .ch-tile__img{box-shadow:none !important;border:1px solid rgba(68,68,68,.12) !important;box-sizing:border-box !important;border-radius:12px !important}
  html body #main .ch-tiles .ch-tile__img img{width:70px !important;height:70px !important;object-fit:cover !important;border-radius:11px !important}
  html body #main .ch-tiles .ch-tile__label{flex:1 1 auto !important;width:auto !important;text-align:left !important;font-size:14px !important;font-weight:700 !important;line-height:21px !important;white-space:normal !important;overflow:visible !important;text-overflow:clip !important;display:block !important}
  html body #main .cf-tools > li[hidden],html body #main .cf-tools[hidden]{display:none !important}
  html body #main a.nh-lowtool{display:flex;align-items:center;gap:12px;width:100%;box-sizing:border-box;min-height:48px;padding:10px 16px;margin:0 0 24px;border:1px solid #3b755f;border-radius:6px;color:#3b755f;text-decoration:none;background:#fff}
  html body #main a.nh-lowtool .cf-tool__icon{width:36px;height:36px;border-radius:50%;background:#3b755f;color:#fff;display:flex;align-items:center;justify-content:center;flex:none}
  html body #main a.nh-lowtool .cf-tool__icon svg{width:20px;height:20px}
  html body #main a.nh-lowtool strong{display:block;font-size:16px;line-height:1.2;font-weight:700;color:#3b755f}
  html body #main a.nh-lowtool small{display:block;font-size:13px;line-height:1.3;color:#444;margin-top:2px}
  html body #main .cf-tools{grid-template-columns:minmax(0,1fr) !important;gap:12px !important}
  html body #main .cf-tools > li{width:100%}
  html body #main .cf-tools .cf-tool{width:100%;box-sizing:border-box;min-height:48px}
  html body #main .cf-card{border-radius:0 !important;margin-left:-20px !important;margin-right:-20px !important;padding-left:20px !important;padding-right:20px !important;width:auto !important;max-width:none !important;box-sizing:border-box !important}
  html body #main .cf-toggle{column-gap:12px}
  html body #main .shopify-section:has(.cf-card){position:relative;z-index:1}
  html body #main .shopify-section:has(.collection__results){padding-top:6px !important}
  html body #main .cf-toggle .cf-chev{width:36px;height:36px;flex:0 0 36px;aspect-ratio:1 / 1}
  html body #main .cf-toggle__text small{display:block}
  html body #main .cf-toggle__text small .cf-dot{display:block !important;width:0 !important;height:0 !important;margin:0 !important;padding:0 !important;border:0 !important;background:none !important}
  html body #main .shopify-section:has(.collection__results){background:#f8f8f8 !important}
  html body #main .nh-count-dup{display:none !important}
  /* collections: list view for products (experiment, Nov 6) */
  html body #main .collection__results .product-list{grid-template-columns:minmax(0,1fr) !important;gap:8px !important;margin-left:-20px !important;margin-right:-20px !important;width:auto !important}
  html body #main .collection__results .product-list product-card{display:grid !important;grid-template-columns:112px minmax(0,1fr) !important;grid-template-rows:auto auto !important;align-content:center !important;align-items:center !important;column-gap:16px !important;row-gap:0 !important;padding:12px 20px !important;border-radius:0 !important;position:relative}
  html body #main .collection__results .product-list product-card .product-card__figure{grid-column:1 !important;grid-row:1 / span 2 !important;width:112px !important;height:112px !important}
  html body #main .collection__results .product-list product-card .product-card__figure img{width:112px !important;height:112px !important;object-fit:cover}
  html body #main .collection__results .product-list product-card .product-card__info{grid-column:2 !important;grid-row:2 !important;padding:0 !important;min-width:0}
  html body #main .collection__results .product-list product-card .product-card__badge-list{grid-column:2 !important;grid-row:1 !important;position:static !important;transform:none !important;margin:0 0 6px !important;display:flex !important;flex-wrap:wrap !important;gap:4px !important;align-self:end;justify-self:start;z-index:auto}
  html body #main .collection__results .product-list product-card .product-card__badge-list:empty{display:none !important}
  html body #main .collection__results .product-list product-card:not(:has(.product-card__badge-list .badge)) .product-card__info{grid-row:1 / span 2 !important}
  html body #main .collection__results .product-list product-card .product-card__badge-list .badge{position:static !important;font-size:12px !important;line-height:1.2 !important;padding:3px 8px !important;border-radius:4px !important;margin:0 !important}
  html body #main .shopify-section--collection-banner{background:#3b755f !important}
  html body #main .shopify-section--collection-banner .collection-header{padding:24px 0 30px !important;margin-top:0 !important}
  html body #main .nh-cb-dup{display:none !important}
  html body #main .shopify-section--collection-banner .v-stack{align-items:flex-start !important;text-align:left !important;gap:6px !important}
  html body #main .shopify-section--collection-banner h1{color:#fff !important;font-size:30.24px !important;text-align:left !important;margin:0 !important}
  html body #main .shopify-section--collection-banner .nh-cb-eyebrow{color:#fff !important;font:700 14px/1.3 'Roboto Condensed',sans-serif !important;text-transform:none !important;letter-spacing:normal !important}
  html body #main .ch-tabs:not(:has(> .ch-tab:only-child)){display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:8px !important}
  html body #main .ch-tabs > .ch-tab{box-sizing:border-box !important;width:100% !important;min-height:48px !important;margin:0 !important;border:1px solid #3b755f !important;border-radius:6px !important;font-size:15px !important;font-weight:700 !important;display:flex !important;align-items:center;justify-content:center;text-align:center;padding:8px 12px !important}
  html body #main .ch-tabs > .ch-tab:last-child:nth-child(odd){grid-column:1 / -1}
  html body #main .ch-tabs > .ch-tab[aria-selected="true"]{background:#3b755f !important;color:#fff !important}
  html body #main .cf-steps{row-gap:24px !important}
  html body #main .cf-steps > *{padding-top:24px !important}
  html body #main .cf-steps .cf-q{margin-top:0 !important}
  html body #main .cf-steps .cf-n{background:#3b755f !important;color:#fff !important;font-size:15px !important;font-weight:700 !important;border:0 !important}
  html body #main .cf-moods .cf-mood:last-child{padding-bottom:0 !important}
  html body #main .cf-step:has(.cf-moods) + .cf-picks-row{margin-top:0 !important}
  html body #main .cf-card .cf-body{margin-top:24px !important}
  html body #main .cf-foot{margin-top:24px !important;padding-top:24px !important}
  html body #main .cf-picks{flex-direction:column !important;flex-wrap:nowrap !important;gap:8px !important}
  html body #main .cf-picks > li{width:100% !important}
  html body #main .cf-picks a.cf-pick{width:100% !important;box-sizing:border-box !important}
  html body #main :is(.cf-band,.ch-band) .sct-eyebrow{text-transform:none !important;letter-spacing:normal !important}
  html body #main .cf-tool small{font-size:13px !important;line-height:1.3 !important}
  html body #main .product-card .rating .text-sm{font-size:13px !important}
  html body #main .cf-toggle__text .h3{font-size:18px !important;line-height:1.2 !important;text-transform:none !important;letter-spacing:normal !important}
  html body #main [id*="accordions"] .h-stack:has(> a.button){flex-direction:column !important;align-items:stretch !important;gap:12px !important}
  html body #main [id*="accordions"] .h-stack > a.button{width:100% !important;min-height:48px !important;padding:12px 16px !important;font-size:16px !important;line-height:1.2 !important;text-align:center;display:flex !important;align-items:center;justify-content:center;padding-top:12px !important;padding-bottom:12px !important}
  html body #main .ch-tabs:has(> .ch-tab:only-child){position:absolute !important;width:1px !important;height:1px !important;margin:0 !important;padding:0 !important;overflow:hidden !important;clip:rect(0 0 0 0) !important;border:0 !important}
  html body #main .collection__results{margin-bottom:-16px !important}
}
/* Numbered steps in product descriptions (soy wax "How to use it"): the theme strips list numbers. All screen sizes, since the description is shared (Nov 4). */
html body #main .sct.fd .fd-prose ol{list-style:decimal !important;padding-left:22px !important;margin:0 0 14px !important}
html body #main .sct.fd .fd-prose ol > li{display:list-item !important;list-style:decimal !important;margin:0 0 6px !important;padding-left:2px}
@media (min-width:768px){.nh-bn-wrap{display:none}}
@media (max-width:767px){
  html{--header-height:72px !important}
  .shopify-section-group-header-group header.shopify-section,
  header.shopify-section[id*="__header"]{position:static !important;display:contents !important}
  header.shopify-section[id*="__header"] height-observer,
  header.shopify-section[id*="__header"] store-header{display:contents !important}
  header.shopify-section[id*="__header"] .header__wrapper{position:sticky;top:0;z-index:40}
  header.shopify-section[id*="__header"] .header__mobile-search-bar{display:block !important;height:0 !important;min-height:0 !important;padding:0 !important;margin:0 !important;border:0 !important;background:none !important;overflow:visible !important}
  header.shopify-section[id*="__header"] .header__mobile-search-bar .header-search{position:fixed !important;top:calc(var(--nh-hs-top,0px) + 16px);left:16px;right:16px;width:auto !important;z-index:50;margin:0 !important;opacity:0;pointer-events:none;visibility:hidden;transition:opacity .15s ease,visibility 0s linear .15s}
  html.nh-hs-open header.shopify-section[id*="__header"] .header__mobile-search-bar .header-search{opacity:1;pointer-events:auto;visibility:visible;transition:opacity .15s ease,visibility 0s}
  html.nh-hs-open::after{content:"";position:fixed;left:0;right:0;top:var(--nh-hs-top,0px);height:76px;background:#fff;z-index:49}
  html.nh-hs-open header-predictive-search{top:calc(100% + 16px) !important;left:-17px !important;right:auto !important;width:calc(100% + 34px) !important;margin:0 !important;border-radius:0 !important;max-height:calc(100vh - var(--nh-hs-top,0px) - 92px);overflow:auto;background:#fff}
  html.nh-hs-open body::before{content:"";position:fixed;left:0;right:0;top:calc(var(--nh-hs-top,0px) + 76px);bottom:0;background:rgb(0 0 0/.4);z-index:45;pointer-events:none}
  .header__mobile-search-bar .header-search__button{display:none !important}
  html body .header__mobile-search-bar .header-search:focus-within{border-color:rgb(68 68 68 / .9) !important;box-shadow:none !important}
  .header__mobile-search-bar .header-predictive-search__panel{box-shadow:none !important;border:0 !important;border-radius:0 !important;background:#fff !important}
  .nh-hs-cancel{flex:0 0 auto;height:48px;min-width:48px;padding:0 16px;background:none;border:0;color:#3b755f;font:700 16px/1 "Roboto Condensed",sans-serif;text-decoration:underline;cursor:pointer}
  facet-drawer .checkbox-container{display:flex;align-items:center;gap:12px;min-height:48px;position:relative}
  facet-drawer .checkbox-container .checkbox{flex:0 0 24px;width:24px !important;height:24px !important;margin:0}
  facet-drawer .checkbox-container label{flex:1;display:block;font-size:16px;line-height:24px;padding:12px 0;margin:0}
  facet-drawer .checkbox-container label::before{content:"";position:absolute;inset:0}
}
.nh-bn__search::placeholder{color:#666 !important;opacity:1 !important}
@media (max-width:767px){
  html body cart-drawer{padding:0 !important}
  html body cart-drawer::part(content){border-radius:0 !important}
  html body cart-drawer::part(body){padding:0 !important}
  html body cart-drawer::part(footer){padding:16px 20px 24px !important;border:0 !important;border-top:0 !important;box-shadow:none !important}
  html body cart-drawer::part(body){border:0 !important;box-shadow:none !important}
  html body cart-drawer .cart-drawer__top{padding:20px 20px 24px !important}
  html body cart-drawer .drawer__close-icon{display:flex !important;align-items:center;justify-content:center;width:48px !important;height:48px !important;margin:-12px -12px -12px 0 !important}
  html body cart-drawer .cart-drawer__line-items{display:block !important;gap:0 !important}
  html body cart-drawer line-item{display:grid !important;grid-template-columns:72px 1fr !important;gap:0 12px !important;align-items:start !important;background:#f3f7f5 !important;border-radius:0 !important;padding:16px 20px 3px !important;margin:0 0 8px 0 !important;border:0 !important;box-sizing:border-box !important;width:100% !important}
  html body cart-drawer line-item .line-item__media-wrapper,html body cart-drawer line-item .line-item__media{width:72px !important;height:72px !important;border-radius:6px !important;object-fit:cover}
  html body cart-drawer line-item .line-item__info{display:grid !important;grid-template-columns:1fr auto !important;column-gap:12px !important;row-gap:4px !important;align-content:start !important;min-width:0 !important}
  html body cart-drawer line-item .line-item__info > .v-stack{display:contents !important}
  html body cart-drawer line-item .line-item__info > .v-stack > a{grid-column:1 / -1 !important;grid-row:1 !important;font-size:16px !important;line-height:24px !important;min-height:24px !important;color:#444 !important}
  html body cart-drawer line-item .nh-li-meta{grid-column:1 / -1 !important;grid-row:2 !important;margin:0 !important;font-size:14px !important;line-height:20px !important;color:#444 !important}
  html body cart-drawer line-item .line-item__info > .v-stack > p,html body cart-drawer line-item .line-item__info > p.text-sm:not(.nh-li-meta){display:none !important}
  html body cart-drawer line-item .line-item__info > .v-stack > price-list{grid-column:2 !important;grid-row:3 !important;align-self:start !important;display:flex !important;align-items:center !important;height:48px !important;margin-top:8px !important}
  html body cart-drawer line-item price-list,html body cart-drawer line-item price-list *{font-size:16px !important;font-weight:700 !important;color:#444 !important}
  html body cart-drawer line-item .line-item__info > div.text-sm{grid-column:1 !important;grid-row:3 !important;margin-top:8px !important}
  html body cart-drawer line-item-quantity{display:flex !important;flex-wrap:wrap !important;justify-content:flex-start !important;align-items:center !important;gap:0 !important}
  html body cart-drawer line-item-quantity .nh-step{height:48px !important;display:inline-flex !important;align-items:center}
  html body cart-drawer line-item-quantity .nh-step__btn{width:48px !important;height:48px !important;min-width:48px !important;min-height:48px !important}
  html body cart-drawer line-item-quantity .quantity-input{height:48px !important;width:48px !important;min-height:48px !important;min-width:48px !important;box-sizing:border-box !important;font-weight:700 !important;color:#444 !important;-webkit-text-fill-color:#444 !important;opacity:1 !important}
  html body cart-drawer line-item-quantity > span.text-xs{flex:0 0 100% !important;font-size:14px !important;line-height:20px !important}
  html body cart-drawer line-item-quantity a.link{display:inline-flex !important;align-items:center;min-height:40px !important;padding:0 !important;font-size:14px !important;font-weight:700 !important;color:#3b755f !important;text-decoration:underline !important;opacity:1 !important;background-image:none !important;background-size:0 0 !important}
  html body cart-drawer > .v-stack{gap:16px !important}
  html body cart-drawer .buy-buttons .button{display:flex !important;align-items:center;justify-content:center;height:48px !important;min-height:48px !important;padding:0 16px !important;font-size:16px !important;font-weight:700 !important}
}
@media (max-width:767px){
  /* Wishlist empty state: 12px between the two Browse buttons */
  html body #main .nh-wl-empty:not(#nh-w1):not(#nh-w2):not(#nh-w3) a+a{margin-top:4px !important}
  /* Wishlist empty state: 24px between the green hero and the heart icon */
  html body #main .wishlist-page__empty:not(#nh-w1):not(#nh-w2):not(#nh-w3)::before{margin-top:24px !important}
  /* Wishlist with saved items: 48px fields and buttons, green 44px Remove link */
  html body #main .wishlist-page__grid .product-card:not(#nh-w1):not(#nh-w2):not(#nh-w3) select{min-height:48px !important;height:48px !important}
  html body #main .wishlist-page__grid .product-card:not(#nh-w1):not(#nh-w2):not(#nh-w3) .quantity-selector__button{min-height:48px !important;height:48px !important}
  html body #main .wishlist-page__grid .product-card:not(#nh-w1):not(#nh-w2):not(#nh-w3) button.button--sm{min-height:48px !important;height:48px !important}
  html body #main .wishlist-page__grid .product-card:not(#nh-w1):not(#nh-w2):not(#nh-w3) .wishlist-btn{color:#3b755f !important;font-weight:700 !important;font-size:14px !important;display:inline-flex !important;align-items:center !important;min-height:44px !important;margin:-12px 0 !important}
  /* Fragrance Families: hero 32px, 18/27 text, full-width button; bands 24px */
  html body #main .sct.ff header.ff-hero:not(#nh-w1):not(#nh-w2):not(#nh-w3){padding-top:32px !important;padding-bottom:32px !important}
  html body #main .sct.ff .ff-hero .ff-sub:not(#nh-w1):not(#nh-w2):not(#nh-w3),html body #main .sct.ff .ff-hero .ff-sub p{font-size:18px !important;line-height:27px !important}
  html body #main .sct.ff .ff-hero a.ff-btn:not(#nh-w1):not(#nh-w2):not(#nh-w3){display:flex !important;width:100% !important;min-height:48px !important;align-items:center !important;justify-content:center !important;box-sizing:border-box !important}
  html body #main .sct.ff :is(section.ff-wheel,section.ff-fams,.ff-end):not(#nh-w1):not(#nh-w2):not(#nh-w3){padding-top:24px !important;padding-bottom:24px !important}
  /* Fragrance Families cards: 6px corners and outline, full-width button, 14px labels, 16px text */
  html body #main .sct.ff .ff-card:not(#nh-w1):not(#nh-w2):not(#nh-w3){border-radius:6px !important;box-shadow:none !important;outline:1px solid rgba(0,0,0,.08) !important;outline-offset:-1px !important}
  html body #main .sct.ff .ff-card a.ff-btn:not(#nh-w1):not(#nh-w2):not(#nh-w3){display:flex !important;width:100% !important;min-height:48px !important;align-items:center !important;justify-content:center !important;box-sizing:border-box !important}
  html body #main .sct.ff .ff-card :is(dt,strong):not(#nh-w1):not(#nh-w2):not(#nh-w3){font-size:14px !important}
  html body #main .sct.ff .ff-card :is(p,dd):not(#nh-w1):not(#nh-w2):not(#nh-w3){font-size:16px !important}
  /* Fragrance Families: no colored stripe on top of the family cards */
  html body #main .sct.ff .ff-card:not(#nh-w1):not(#nh-w2):not(#nh-w3){border-top:0 !important}
  /* Oil Glossary: hero 32px, 48px search, full-width striped table, 24px around it */
  html body #main .sct.tp:has(.nh-oil-glossary) header.tp-hero:not(#nh-w1):not(#nh-w2):not(#nh-w3){padding-top:32px !important;padding-bottom:32px !important}
  html body #main .sct.tp:has(.nh-oil-glossary) #nh-glossary-filter:not(#nh-w1):not(#nh-w2):not(#nh-w3){height:48px !important;min-height:48px !important;box-sizing:border-box !important}
  html body #main .sct.tp:has(.nh-oil-glossary) .nh-oil-glossary:not(#nh-w1):not(#nh-w2):not(#nh-w3){padding-top:24px !important;padding-bottom:24px !important}
  html body #main .sct.tp:has(.nh-oil-glossary) .nh-lye-calc__panel:not(#nh-w1):not(#nh-w2):not(#nh-w3){overflow:visible !important;box-shadow:none !important;border-radius:0 !important;padding:0 !important;border:0 !important;background:transparent !important}
  html body #main .sct.tp:has(.nh-oil-glossary) .nh-lye-calc__field:not(#nh-w1):not(#nh-w2):not(#nh-w3){margin-bottom:16px !important}
  html body #main .sct.tp:has(.nh-oil-glossary) .nh-lye-calc__glossary-tablewrap:not(#nh-w1):not(#nh-w2):not(#nh-w3){margin-left:calc(50% - 50vw) !important;margin-right:calc(50% - 50vw) !important;width:100vw !important;max-width:100vw !important}
  html body #main .sct.tp:has(.nh-oil-glossary) table.nh-lye-calc__glossarytable :is(tr,th,td):not(#nh-w1):not(#nh-w2):not(#nh-w3){border:0 !important}
  html body #main .sct.tp:has(.nh-oil-glossary) table.nh-lye-calc__glossarytable tbody tr:nth-child(even):not(#nh-w1):not(#nh-w2):not(#nh-w3){background:#eff5f1 !important}
  html body #main .sct.tp:has(.nh-oil-glossary) table.nh-lye-calc__glossarytable :is(th,td):first-child:not(#nh-w1):not(#nh-w2):not(#nh-w3){padding-left:20px !important}
  html body #main .sct.tp:has(.nh-oil-glossary) table.nh-lye-calc__glossarytable thead :is(th,td):not(#nh-w1):not(#nh-w2):not(#nh-w3){position:static !important;top:auto !important}
  /* Oil Glossary: 24px between sections, 16px heading to content */
  html body #main .sct.tp:has(.nh-oil-glossary) .tp-body:not(#nh-w1):not(#nh-w2):not(#nh-w3){padding-top:24px !important;padding-bottom:24px !important}
  html body #main .sct.tp:has(.nh-oil-glossary) .tp-gloss > h2:not(#nh-w1):not(#nh-w2):not(#nh-w3){margin-bottom:16px !important}
  html body #main .sct.tp:has(.nh-oil-glossary) .tp-keynote:not(#nh-w1):not(#nh-w2):not(#nh-w3){margin-bottom:0 !important}
  html body #main .sct.tp:has(.nh-oil-glossary) .tp-copyright:not(#nh-w1):not(#nh-w2):not(#nh-w3){margin-top:0 !important}
html body #main .sct.tp:has(.nh-oil-glossary) table.nh-lye-calc__glossarytable :is(th,td):not(#nh-w1):not(#nh-w2):not(#nh-w3){white-space:nowrap !important}
html body #main .jdgm-widget .jm-review-widget-header__summary-section:not(#nh-w1):not(#nh-w2):not(#nh-w3){justify-content:flex-start !important}
html body #main .jdgm-widget .jm-review-widget-header__summary-section .jm-stack:not(#nh-w1):not(#nh-w2):not(#nh-w3){align-items:flex-start !important}
html body #main .jdgm-widget .jm-text--align-center:not(#nh-w1):not(#nh-w2):not(#nh-w3){text-align:left !important}
html body #main .jdgm-widget .jm-review-widget-header__average-rating-display:not(#nh-w1):not(#nh-w2):not(#nh-w3){justify-content:flex-start !important;min-height:0 !important;height:auto !important}
html body #main .jdgm-widget .jm-review-widget-header__main-content > .jm-histogram:not(#nh-w1):not(#nh-w2):not(#nh-w3){margin-top:0 !important}
html body #main .jdgm-widget button.jm-button.jm-button--primary:not(#nh-w1):not(#nh-w2):not(#nh-w3){min-height:48px !important;height:48px !important}
html body #main .jdgm-widget .jm-filters__buttons > button, .jdgm-widget .jm-filters__buttons .jm-sort-filter, .jdgm-widget .jm-filters__buttons select:not(#nh-w1):not(#nh-w2):not(#nh-w3){min-height:48px !important;height:48px !important}
html body #main .jdgm-widget .jm-ai-insights.jm-ai-insights--with-bg:not(#nh-w1):not(#nh-w2):not(#nh-w3){background:#f3f7f5 !important}
html body #main .jdgm-widget .jm-ai-insights .jm-box.jm-box--inherit-color:not(#nh-w1):not(#nh-w2):not(#nh-w3){padding:24px 0 !important}
html body #main .jdgm-widget .jdgm-tablist__list:not(#nh-w1):not(#nh-w2):not(#nh-w3){display:flex !important;gap:8px !important;height:auto !important}
html body #main .jdgm-widget .jdgm-tablist__list .jdgm-tab:not(#nh-w1):not(#nh-w2):not(#nh-w3){flex:1 1 0 !important;height:48px !important;min-height:48px !important;border:1px solid #3b755f !important;border-radius:6px !important;background:#fff !important;color:#3b755f !important;font-weight:700 !important}
html body #main .jdgm-widget .jdgm-tablist__list .jdgm-tab.jdgm-tab--active:not(#nh-w1):not(#nh-w2):not(#nh-w3){background:#3b755f !important;color:#fff !important}
html body #main .jdgm-widget .jdgm-tablist__activeBar:not(#nh-w1):not(#nh-w2):not(#nh-w3){display:none !important}
html body #main .jdgm-widget .jm-review-widget-header__summary-section:not(#nh-w1):not(#nh-w2):not(#nh-w3){display:block !important}
html body #main .jdgm-widget .jm-review-widget-header__summary-section > .jm-stack:not(#nh-w1):not(#nh-w2):not(#nh-w3){width:100% !important;margin:0 !important;align-items:flex-start !important}
html body #main .jdgm-widget .jm-review-widget-header__average-rating-display:not(#nh-w1):not(#nh-w2):not(#nh-w3){height:24px !important;max-height:24px !important;overflow:visible !important}
html body #main .jdgm-widget .jm-review-item.jm-review-item:not(#nh-w1):not(#nh-w2):not(#nh-w3){padding-bottom:0 !important}
html body #main .jdgm-widget .jdgm-tablist__list:not(#nh-w1):not(#nh-w2):not(#nh-w3){flex-direction:column !important}
html body #main .jdgm-widget .jdgm-tablist__list .jdgm-tab:not(#nh-w1):not(#nh-w2):not(#nh-w3){width:100% !important;flex:none !important;display:flex !important;align-items:center !important;justify-content:center !important;text-align:center !important}
html body #main .jdgm-widget .jm-review-collection-info:not(#nh-w1):not(#nh-w2):not(#nh-w3){display:flex !important;justify-content:center !important;text-align:center !important}
html body #main .jdgm-widget .jm-review-collection-link svg:not(#nh-w1):not(#nh-w2):not(#nh-w3){display:none !important}
html body #main .jdgm-widget .jm-pagination-controls:not(#nh-w1):not(#nh-w2):not(#nh-w3){justify-content:center !important;gap:4px !important;align-items:center !important}
html body #main .jdgm-widget .jm-pagination-controls button.jm-pagination-controls__button:not(#nh-w1):not(#nh-w2):not(#nh-w3){width:44px !important;min-width:44px !important;height:44px !important;min-height:44px !important;padding:0 !important;border-radius:999px !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;background:#fff !important;border:.8px solid #d9dedb !important;color:#2b2b2b !important;font:700 16px/1 "Roboto Condensed",sans-serif !important}
html body #main .jdgm-widget .jm-pagination-controls button.jm-pagination-controls__button--active:not(#nh-w1):not(#nh-w2):not(#nh-w3){background:#3b755f !important;border-color:#3b755f !important;color:#fff !important}
html body #main .jdgm-widget .jm-pagination-controls button.jm-pagination-controls__button--nav:not(#nh-w1):not(#nh-w2):not(#nh-w3){border:1px solid #3b755f !important;color:#3b755f !important}
html body #main .jdgm-widget .jm-pagination-controls button.jm-pagination-controls__button--nav.jm-button--disabled:not(#nh-w1):not(#nh-w2):not(#nh-w3){border-color:#d9dedb !important;color:#9aa8a1 !important}
html body #main .jdgm-widget .jm-pagination-controls button.jm-pagination-controls__button .jm-text:not(#nh-w1):not(#nh-w2):not(#nh-w3){color:inherit !important;font:inherit !important}
html body #main .jdgm-widget .jm-review-item.jm-review-item.jm-review-item:not(#nh-w1):not(#nh-w2):not(#nh-w3){border-bottom:0 !important}
html body #main .jdgm-widget .jm-review-item > .jm-stack.jm-stack:not(#nh-w1):not(#nh-w2):not(#nh-w3){display:flex !important;flex-direction:column !important;row-gap:16px !important}
html body #main .jdgm-widget .jm-review-item > .jm-stack.jm-stack > *:not(#nh-w1):not(#nh-w2):not(#nh-w3){margin-top:0 !important;margin-bottom:0 !important}
html body #main .jdgm-widget .jm-pagination-controls:not(#nh-w1):not(#nh-w2):not(#nh-w3){flex-wrap:nowrap !important}
html body #main .jdgm-widget .jm-pagination-controls button.jm-pagination-controls__button:not(#nh-w1):not(#nh-w2):not(#nh-w3){flex:1 1 0 !important;max-width:44px !important;min-width:0 !important;width:auto !important;height:auto !important;min-height:0 !important;aspect-ratio:1/1 !important}
html body #main .jdgm-widget .jm-pagination-controls:not(#nh-w1):not(#nh-w2):not(#nh-w3){margin-left:calc(50% - 50vw) !important;width:100vw !important;max-width:100vw !important;box-sizing:border-box !important;padding:24px 20px 24px !important;background:#eff5f1 !important;flex-wrap:wrap !important;justify-content:center !important;gap:8px 4px !important;margin-top:0 !important}
html body #main .jdgm-widget .jm-pagination-controls .nh-pageinfo:not(#nh-w1):not(#nh-w2):not(#nh-w3){flex:0 0 100% !important;text-align:center !important;font:400 15px/24px "Roboto Condensed",sans-serif !important;color:#5a5a5a !important;margin:0 0 7px !important}
html body #main .jdgm-widget .jm-pagination-controls .nh-pageinfo strong:not(#nh-w1):not(#nh-w2):not(#nh-w3){color:#3b755f !important;font-weight:700 !important}
html body #main .jdgm-widget .jm-pagination-controls .jm-pagination-controls__ellipsis:not(#nh-w1):not(#nh-w2):not(#nh-w3){color:#2b2b2b !important;font-weight:700 !important}
html body #main .jdgm-widget .jdgm-review-list.jdgm-review-list:not(#nh-w1):not(#nh-w2):not(#nh-w3){row-gap:17px !important}
html body #main .jdgm-widget .jdgm-review-list > .jm-review-item.jm-review-item + .jm-review-item.jm-review-item:not(#nh-w1):not(#nh-w2):not(#nh-w3){margin-top:0 !important}
html body #main .jdgm-widget .jm-pagination-controls button.jm-pagination-controls__button--nav .jm-with-icon,html body #main .jdgm-widget .jm-pagination-controls button.jm-pagination-controls__button--nav svg:not(#nh-w1):not(#nh-w2):not(#nh-w3){margin:0 !important;gap:0 !important;justify-content:center !important}
html body #main .jdgm-widget .jm-pagination-controls button.jm-pagination-controls__button--nav svg:not(#nh-w1):not(#nh-w2):not(#nh-w3){transform:translateX(4px) translateY(2px) !important}
html body #main .jdgm-widget .jdgm-review-list > .jm-review-item.jm-review-item.jm-review-item:not(#nh-w1):not(#nh-w2):not(#nh-w3){padding-top:24px !important;padding-bottom:0 !important}
html body #main .jdgm-widget .jdgm-review-list > .jm-review-item.jm-review-item.jm-review-item:nth-child(odd):not(#nh-w1):not(#nh-w2):not(#nh-w3){background:transparent !important}
html body #main .jdgm-widget .jm-review-item .jm-product-variant-card.jm-product-variant-card:not(#nh-w1):not(#nh-w2):not(#nh-w3){background:#d5e8dc !important}
html body #main .jdgm-widget .jm-review-item .jm-product-variant-card .jm-text:not(#nh-w1):not(#nh-w2):not(#nh-w3){color:#444 !important}
html body #main .jdgm-widget .jdgm-review-list > .jm-review-item.jm-review-item:nth-child(even) .jm-product-variant-card.jm-product-variant-card:not(#nh-w1):not(#nh-w2):not(#nh-w3){background:#ececec !important}
html body #main .jdgm-widget .jdgm-review-list.jdgm-review-list:not(#nh-w1):not(#nh-w2):not(#nh-w3){padding-top:12px !important}
html body #main .jdgm-widget .jdgm-review-list > .jm-review-item.jm-review-item.jm-review-item:first-child:not(#nh-w1):not(#nh-w2):not(#nh-w3){padding-top:0 !important}
html body #main .jdgm-widget .jm-review-collection-info.jm-review-collection-info:not(#nh-w1):not(#nh-w2):not(#nh-w3){margin-top:24px !important;margin-bottom:24px !important}
html body #main .sct.vp .vp-hero a.vp-btn:not(#nh-w1):not(#nh-w2):not(#nh-w3){display:flex !important;width:100% !important;box-sizing:border-box !important;min-height:48px !important;height:48px !important;padding-top:0 !important;padding-bottom:0 !important;align-items:center !important;justify-content:center !important}
html body #main .sct.vp li.vp-card:not(#nh-w1):not(#nh-w2):not(#nh-w3){border-radius:6px !important;box-shadow:none !important;border:0 !important;outline:1px solid rgba(0,0,0,.08) !important}
html body #main .sct.vp ol.vp-grid:not(#nh-w1):not(#nh-w2):not(#nh-w3){row-gap:24px !important;gap:24px !important}
html body #main .sct.vp .vp-kicker:not(#nh-w1):not(#nh-w2):not(#nh-w3),html body #main .sct.vp li.vp-card small:not(#nh-w1):not(#nh-w2):not(#nh-w3){text-transform:none !important;letter-spacing:0 !important;font-size:14px !important;line-height:20px !important}
html body #main .sct.vp .vp-text:not(#nh-w1):not(#nh-w2):not(#nh-w3){padding:20px !important}
html body #main .sct.vp .vp-text > small:not(#nh-w1):not(#nh-w2):not(#nh-w3){display:block !important;margin-bottom:8px !important}
html body #main .sct.vp .vp-text > h3:not(#nh-w1):not(#nh-w2):not(#nh-w3){margin-bottom:8px !important}
html body #main .sct.vp .vp-text > p:not(#nh-w1):not(#nh-w2):not(#nh-w3){font-size:16px !important;line-height:24px !important}
html body #main .sct.vp .vp-hero a.vp-btn.vp-btn:not(#nh-w1):not(#nh-w2):not(#nh-w3){font-family:"Roboto Condensed",sans-serif !important;font-size:16px !important;line-height:19.2px !important;font-weight:700 !important;letter-spacing:normal !important;text-transform:none !important}
html body #main .ps-sec h2:has(> button.ps-acc__h):not(#nh-x1):not(#nh-x2):not(#nh-x3):not(#nh-x4):not(#nh-x5):not(#nh-x6):not(#nh-x7):not(#nh-x8):not(#nh-x9):not(#nh-x10):not(#nh-x11):not(#nh-x12){font-family:Antonio,Anton,sans-serif !important;font-size:16px !important;line-height:20.8px !important;font-weight:700 !important;letter-spacing:normal !important}
html body #main .sm-filter input:not(#nh-w1):not(#nh-w2):not(#nh-w3){height:48px !important;min-height:48px !important;box-sizing:border-box !important}
html body #main section.sm-card:not(#nh-w1):not(#nh-w2):not(#nh-w3){padding-top:24px !important;padding-bottom:24px !important}
html body #main section.sm-card li > a:not(#nh-w1):not(#nh-w2):not(#nh-w3){align-items:baseline !important}
html body #main section.sm-card h2 small:not(#nh-w1):not(#nh-w2):not(#nh-w3), html body #main .sm-filter label:not(#nh-w1):not(#nh-w2):not(#nh-w3){text-transform:none !important;letter-spacing:0 !important;font-size:14px !important;line-height:20px !important}

html body #main .sct.tp:has(.nh-lye-howto) .tp-hero:not(#nh-w1):not(#nh-w2):not(#nh-w3){padding-top:32px !important;padding-bottom:32px !important}
html body #main .sct.tp:has(.nh-lye-howto) .tp-body:not(#nh-w1):not(#nh-w2):not(#nh-w3){padding-top:0 !important}
html body #main .sct.tp:has(.nh-lye-howto) .nh-lye-howto__steps:not(#nh-w1):not(#nh-w2):not(#nh-w3){margin-top:0 !important}
html body #main .sct.tp:has(.nh-lye-howto) .nh-lye-howto__steps > .nh-lye-calc__panel:first-child:not(#nh-w1):not(#nh-w2):not(#nh-w3){margin-top:0 !important}

html body #main .sct.tp:has(.nh-lye-howto) .nh-lye-howto__steps [class*="nh-lye-howto__body"] > :last-child:not(#nh-w1):not(#nh-w2):not(#nh-w3){margin-bottom:0 !important}

html body #main header.sct.nph:not(#nh-w1):not(#nh-w2):not(#nh-w3){padding-top:32px !important;padding-bottom:32px !important}
html body #main .section:has(> .container > .nh-qo):not(#nh-w1):not(#nh-w2):not(#nh-w3){padding-top:0 !important}
html body #main .nh-qo.nh-qo:not(#nh-w1):not(#nh-w2):not(#nh-w3){padding-top:12px !important}
html body #main .nh-qo .nh-qo__search:not(#nh-w1):not(#nh-w2):not(#nh-w3), html body #main .nh-qo .nh-qo__filters-toggle:not(#nh-w1):not(#nh-w2):not(#nh-w3), html body #main .nh-qo .nh-qo__variant input.nh-qo__qty:not(#nh-w1):not(#nh-w2):not(#nh-w3){height:48px !important;min-height:48px !important;box-sizing:border-box !important}

html body #main .nh-qo .nh-qo__variants:not(#nh-w1):not(#nh-w2):not(#nh-w3){display:grid !important;grid-template-columns:repeat(5,minmax(0,1fr)) !important;gap:12px 8px !important;align-items:start !important}
html body #main .nh-qo .nh-qo__variants > .nh-qo__variant:not(#nh-w1):not(#nh-w2):not(#nh-w3){display:flex !important;flex-direction:column !important;align-items:stretch !important;gap:6px !important;min-width:0 !important;width:auto !important}
html body #main .nh-qo .nh-qo__variant input.nh-qo__qty:not(#nh-w1):not(#nh-w2):not(#nh-w3){width:100% !important;min-width:0 !important;padding-left:0 !important;padding-right:0 !important;text-align:center !important}
html body #main .nh-qo .nh-qo__variant-info:not(#nh-w1):not(#nh-w2):not(#nh-w3){display:flex !important;flex-direction:column !important;gap:2px !important;min-width:0 !important}
html body #main .nh-qo .nh-qo__variant-info *:not(#nh-w1):not(#nh-w2):not(#nh-w3){font-size:14px !important;line-height:18px !important;overflow-wrap:anywhere}

html body #main .nh-qo .nh-qo__toolbar:not(#nh-w1):not(#nh-w2):not(#nh-w3){margin-bottom:8px !important}

html body #main .nh-qo .nh-qo__filters-toggle:not(#nh-w1):not(#nh-w2):not(#nh-w3){display:flex !important;align-items:center !important;justify-content:center !important;gap:8px !important;text-align:center !important}

html body #main .nh-qo .nh-qo__toolbar:not(#nh-w1):not(#nh-w2):not(#nh-w3){position:static !important;top:auto !important;box-shadow:none !important;z-index:auto !important;background:transparent !important}

html body #main .sct:has(.nhb-topic) .sct-hero h1:not(#nh-w1):not(#nh-w2):not(#nh-w3){font-size:30.24px !important;line-height:33.264px !important;letter-spacing:-.3024px !important}
html body #main .sct:has(.nhb-topic) a.sct-card:not(#nh-w1):not(#nh-w2):not(#nh-w3){border-radius:6px !important;box-shadow:none !important;outline:1px solid rgba(0,0,0,.08) !important}
html body #main .sct:has(.nhb-topic) > .sct-wrap:not(#nh-w1):not(#nh-w2):not(#nh-w3), html body #main .sct:has(.nhb-topic) .sct-wrap:not(#nh-w1):not(#nh-w2):not(#nh-w3){gap:24px !important}

html body #main .sct:has(.sct-hero):has(a.sct-feature) .sct-hero h1:not(#nh-w1):not(#nh-w2):not(#nh-w3){font-size:30.24px !important;line-height:33.264px !important;letter-spacing:-.3024px !important}
html body #main .sct:has(.sct-hero):has(a.sct-feature) .sct-wrap:not(#nh-w1):not(#nh-w2):not(#nh-w3){gap:24px !important}
html body #main .sct:has(.sct-hero):has(a.sct-feature) a.sct-feature:not(#nh-w1):not(#nh-w2):not(#nh-w3), html body #main .sct:has(.sct-hero):has(a.sct-feature) a.sct-card:not(#nh-w1):not(#nh-w2):not(#nh-w3){border-radius:6px !important;box-shadow:none !important;outline:1px solid rgba(0,0,0,.08) !important}

html body #main .sct:has(.sct-hero):has(a.sct-card) .sct-hero h1:not(#nh-w1):not(#nh-w2):not(#nh-w3){font-size:30.24px !important;line-height:33.264px !important;letter-spacing:-.3024px !important}
html body #main .sct:has(.sct-hero):has(a.sct-card) .sct-wrap:not(#nh-w1):not(#nh-w2):not(#nh-w3){gap:24px !important}
html body #main .sct:has(.sct-hero):has(a.sct-card) a.sct-card:not(#nh-w1):not(#nh-w2):not(#nh-w3){border-radius:6px !important;box-shadow:none !important;outline:1px solid rgba(0,0,0,.08) !important}

html body #main .sct:has(.sct-hero):has(a.sct-card) .sct-cta a.sct-btn:not(#nh-w1):not(#nh-w2):not(#nh-w3){display:flex !important;width:100% !important;box-sizing:border-box !important;min-height:48px !important;height:48px !important;align-items:center !important;justify-content:center !important;text-align:center !important}

html body #main .sct:has(> article.sct-art) header.sct-banner h1:not(#nh-w1):not(#nh-w2):not(#nh-w3){font-size:30.24px !important;line-height:33.264px !important;letter-spacing:-.3024px !important}
html body #main .sct:has(> article.sct-art) header.sct-banner:not(#nh-w1):not(#nh-w2):not(#nh-w3){padding-top:32px !important;padding-bottom:32px !important}
html body #main .sct:has(> article.sct-art) header.sct-banner a.nh-jump:not(#nh-w1):not(#nh-w2):not(#nh-w3){display:flex !important;width:100% !important;box-sizing:border-box !important;min-height:48px !important;height:48px !important;align-items:center !important;justify-content:center !important;text-align:center !important}

html body #main .sct:has(> article.sct-art) header.sct-banner .sct-bars:not(#nh-w1):not(#nh-w2):not(#nh-w3){display:none !important}

html body #main .sct:has(> article.sct-art) p.sct-answer:not(#nh-w1):not(#nh-w2):not(#nh-w3){padding-top:0 !important;padding-bottom:32px !important}

html body #main header.sct.nuh:not(#nh-w1):not(#nh-w2):not(#nh-w3){padding-top:32px !important;padding-bottom:32px !important}
html body #main header.sct.nuh h1:not(#nh-w1):not(#nh-w2):not(#nh-w3){font-size:30.24px !important;line-height:33.264px !important;letter-spacing:-.3024px !important}

html body #main .search-banner x-tabs.nav-categories:not(#nh-w1):not(#nh-w2):not(#nh-w3){box-sizing:border-box !important;width:100% !important;margin-left:0 !important;margin-right:0 !important;padding-left:4px !important;padding-right:4px !important}
html body #main .search-banner x-tabs.nav-categories > button:not(#nh-w1):not(#nh-w2):not(#nh-w3){flex:1 1 0 !important;min-width:0 !important;width:auto !important}

html body #main header.sct.nuh .nuh__intro:not(#nh-w1):not(#nh-w2):not(#nh-w3){font-size:18px !important;line-height:27px !important}
html body #main header.sct.nuh .nuh__form:not(#nh-w1):not(#nh-w2):not(#nh-w3){min-height:48px !important}
html body #main header.sct.nuh .nuh__form input:not(#nh-w1):not(#nh-w2):not(#nh-w3),html body #main header.sct.nuh .nuh__form button:not(#nh-w1):not(#nh-w2):not(#nh-w3){min-height:48px !important;height:48px !important}
html body #main .sct.nuh-pop:not(#nh-w1):not(#nh-w2):not(#nh-w3){padding-top:24px !important;padding-bottom:24px !important}
html body #main .sct.nuh-pop h2:not(#nh-w1):not(#nh-w2):not(#nh-w3):not(#nh-w4):not(#nh-w5):not(#nh-w6):not(#nh-w7):not(#nh-w8):not(#nh-w9):not(#nh-w10){font-size:24px !important;line-height:28.8px !important;letter-spacing:-.24px !important;margin-bottom:16px !important}
html body #main .sct.nuh-pop ul:not(#nh-w1):not(#nh-w2):not(#nh-w3){gap:12px !important}
html body #main .page-spacer:has(.nh-wl-count):not(#nh-w1):not(#nh-w2):not(#nh-w3){padding-top:24px !important}
html body #main p.nh-wl-count:not(#nh-w1):not(#nh-w2):not(#nh-w3){margin-bottom:16px !important}
html body #main .ff-chips:not(#nh-w1):not(#nh-w2):not(#nh-w3){gap:12px 8px !important}
html body #main .ff-chips .ff-chip:not(#nh-w1):not(#nh-w2):not(#nh-w3){min-height:48px !important;box-sizing:border-box !important}
html body #main .ff-extra p a:not(#nh-w1):not(#nh-w2):not(#nh-w3),html body #main .nh-help a:not(#nh-w1):not(#nh-w2):not(#nh-w3){padding-top:4px !important;padding-bottom:4px !important}
html body #main .shopify-section:has(> nav.nh-jl) + .shopify-section > section.nh-tb > .nh-tb__head:not(#nh-w1):not(#nh-w2):not(#nh-w3){padding-top:2px !important}
html body #main .shopify-section--main-cart span.text-xs:not(#nh-w1):not(#nh-w2):not(#nh-w3){font-size:12px !important;line-height:18px !important}
html body #main .nuh__chips a:not(#nh-w1):not(#nh-w2):not(#nh-w3){min-height:40px !important}
html body #main .shopify-section[class*="--breadcrumb"]:not(#nh-w1):not(#nh-w2):not(#nh-w3){background:#fff !important}
html body #main nav.jm-load-more-pagination:not(#nh-w1):not(#nh-w2):not(#nh-w3){background:#eff5f1 !important}
}

/* First-paint layout (Nov 7 cleanup). The phone script used to adjust these after load while the page was hidden
   (the nh-wait guard). The guard is gone, so the styles below give the same result from the first paint and the
   script's later pass changes nothing visible. Values copied from what the script sets. */
@media (max-width:767px){
  /* Collections: grid section starts flush; with the finder card above, pull it up so the gap is 24px */
  html body #main .shopify-section--main-collection{padding-top:0 !important}
  html body #main .shopify-section--main-collection .collection--filters-drawer{margin-top:0 !important}
  html body #main .shopify-section--nh-collection-finder:has(.cf-card) + .shopify-section--main-collection{margin-top:-14px !important}
  /* Tools with two examples (Lye Calculator, Batch Cost, Ingredient List): phones show only the second */
  html body #main .sct.tp:has(.tp-tool :is(.nh-lye-calc,#nh-cost,#nh-lab)) .tp-intro__btn[data-key="main"]:has(~ .tp-intro__btn[data-key="alt"]){display:none !important}
  /* Statement pages: summary and call-to-action boxes run edge to edge */
  html body #main :is(.stp-sum,.sct-cta.stp-cta){margin-left:-20px !important;margin-right:-20px !important;width:calc(100% + 40px) !important;max-width:none !important;box-sizing:border-box !important;border-radius:0 !important;border-left-width:0 !important;border-right-width:0 !important;padding-left:20px !important;padding-right:20px !important;box-shadow:none !important}
  /* Sitemap: cards become alternating full-width bands */
  html body #main .sm-grid{row-gap:0 !important}
  html body #main .sm-grid > .sm-card{margin:0 -20px !important;width:calc(100% + 40px) !important;max-width:none !important;box-sizing:border-box !important;border-radius:0 !important;border-width:0 !important;padding-left:20px !important;padding-right:20px !important;box-shadow:none !important;background:#fff !important}
  html body #main .sm-grid > .sm-card:nth-child(even){background:rgb(243,247,245) !important}
}
}
@media (max-width:767px){
  /* beats the older 6px rule for sections with results, same as the script's later pass */
  html body #main .shopify-section.shopify-section--main-collection:has(.collection__results){padding-top:0 !important}
  /* Reviews page: hold space for the reviews app so the footer doesn't jump when it loads */
  html body #main .shopify-section[id*="__apps_reviews"]{min-height:100vh}
}
@media (max-width:767px) and (scripting: enabled){
  /* Collection finder: on phones the helpful-tools links move further down the page (script), so the top list starts out of the way (still measurable, so the script can move the links) */
  html body #main:has(.ch-explore-h) .cf-tools:not([hidden]){position:absolute !important;visibility:hidden !important;pointer-events:none !important}
}
/* FAQ lists start folded on phones from the first paint: every accordion rule above, repeated for the moment
   before the script adds .nh-acc. Only when scripts run, so answers can never be stuck hidden. (generated) */
@media (max-width:767px) and (scripting: enabled){
html body #main .pg-faq:not(.nh-acc) .pg-q > h3{margin:0}
html body #main .pg-faq:not(.nh-acc) .pg-q:not(.is-open) > .prose{display:none}
html body #main .pg-faq:not(.nh-acc) .pg-q > .prose{margin-top:10px}
html body #main .nfq-cards:not(.nh-acc) .nfq-q{position:relative;padding-right:30px;cursor:pointer;align-items:center;-webkit-tap-highlight-color:transparent}
html body #main .nfq-cards:not(.nh-acc) .nfq-q::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);font:700 26px/1 'Roboto Condensed',sans-serif;color:#3b755f}
html body #main .nfq-cards:not(.nh-acc) .nfq-card.is-open .nfq-q::after{content:"\2212"}
html body #main .nfq-cards:not(.nh-acc) .nfq-card.is-open{box-shadow:inset 0 0 0 1.5px #3b755f !important}
html body #main .nfq-cards:not(.nh-acc) .nfq-q{margin-bottom:0}
html body #main .nfq-cards:not(.nh-acc) .nfq-a{margin-top:12px}
html body #main .sct.pg .pg-faq:not(.nh-acc){padding:20px 0 !important;gap:8px !important;row-gap:8px !important}
html body #main .sct.pg .pg-faq:not(.nh-acc) > .pg-q.pg-q,html body #main .sct.pg .pg-faq:not(.nh-acc) > .pg-q.is-open{border-radius:0 !important;padding:0 20px !important;box-shadow:none !important;outline:0 !important;border:0 !important;background:#fff !important}
html body #main .sct.pg .pg-faq:not(.nh-acc) .pg-q > h3{font-size:16px !important;line-height:20.8px !important;font-weight:400 !important;color:#444 !important;margin:0 !important}
html body #main .sct.pg .pg-faq:not(.nh-acc) .pg-q > .prose{margin-top:0 !important;padding-bottom:20px !important}
html body #main .nfq-cards:not(.nh-acc){padding:20px 0 !important;gap:8px !important;row-gap:8px !important}
html body #main .nfq-cards:not(.nh-acc) > .nfq-card.nfq-card,html body #main .nfq-cards:not(.nh-acc) > .nfq-card.is-open{border-radius:0 !important;padding:0 20px !important;box-shadow:none !important;outline:0 !important;border:0 !important;background:#fff !important}
html body #main .nfq-cards:not(.nh-acc) .nfq-q{min-height:58px !important;align-items:center !important;padding:0 30px 0 0 !important}
html body #main .nfq-cards:not(.nh-acc) .nfq-num{display:none !important}
html body #main .nfq-cards:not(.nh-acc) .nfq-card .nfq-q h2{font-size:16px !important;line-height:20.8px !important;font-weight:400 !important;margin:0 !important;font-family:"Roboto Condensed",sans-serif !important;text-transform:none !important;letter-spacing:0 !important;color:#444 !important}
html body #main .nfq-cards:not(.nh-acc) .nfq-card .nfq-a{margin-top:0 !important;padding-bottom:20px !important}
html body #main .nfq-cards:not(.nh-acc) .nfq-card:not(.is-open) .nfq-a{display:none}
  html body #main .pg-faq:not(.nh-acc) .pg-q > h3{position:relative;padding-right:36px}
  html body #main .pg-faq:not(.nh-acc) .pg-q > h3::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);font:700 26px/1 'Roboto Condensed',sans-serif;color:#3b755f}
}
/* Whole product card opens the product on phones (Carrie, Nov 7): the name link is stretched over the card;
   the review stars and any buttons inside stay clickable on top. */
@media (max-width:767px){
  html body product-card{position:relative}
  html body product-card a.bold::after{content:"";position:absolute;inset:0;z-index:1}
  html body product-card :is(a.rating,button,select,input,.wishlist-btn,quick-buy-modal,[class*="quick"]){position:relative;z-index:2}
}
/* All widths (Nov 7 cleanup): edge-to-edge carousels reach 8px past the screen and made desktop pages scroll sideways.
   overflow-x:clip trims that without breaking sticky elements (unlike overflow:hidden). */
html body #main{overflow-x:clip}
/* All widths (Nov 7): the header search field had no visible keyboard focus; ring the box around it. */
html body :has(> .header-search__input:focus-visible){outline:2px solid #3b755f !important;outline-offset:2px !important}
