/* Deliberately scoped above Divi/Woo specificity. No global header/footer rules.
 * The few !important declarations counter verified Divi important declarations. */
#main-content.rufales-product-master {
  font: 400 16px/1.6 var(--rufales-font-sans);
  background: var(--rufales-color-canvas);
  color: var(--rufales-color-ink);
}
#main-content.rufales-product-master .rufales-product-master__inner { max-width: 1160px; }
#main-content.rufales-product-master .rufales-breadcrumbs { align-items: center; gap: 8px; margin-bottom: 16px; font: 400 13px/1.5 var(--rufales-font-sans); }
#main-content.rufales-product-master .rufales-product-master__heading { margin-bottom: 24px; }
#main-content.rufales-product-master .rufales-product-master__heading h1 {
	padding: 0; margin: 0 0 14px;   color: var(--rufales-color-ink);
	font: 600 var(--rufales-font-size-3xl)/var(--rufales-line-heading) var(--rufales-font-sans);
	letter-spacing: -.02em;
}
#main-content.rufales-product-master .rufales-product-master__lead { max-width: 72ch; }
#main-content.rufales-product-master .rufales-product-master__lead :is(p,strong,b,span) { font: 400 16px/1.6 var(--rufales-font-sans); color: #535b53; padding: 0; }
#main-content.rufales-product-master .rufales-product-master__provenance { font: 500 14px/1.5 var(--rufales-font-sans); padding: 0; margin-top: 10px; }
#main-content.rufales-product-master .rufales-product-master__grid { grid-template-columns: minmax(0,1.15fr) minmax(0,1fr); gap: 28px; }
#main-content.rufales-product-master .rufales-product-master__purchase { padding: 22px; top: 116px; }
#main-content.rufales-product-master .rufales-commerce-embed { padding: 0; border: 0; box-shadow: none; background: transparent; border-radius: 0; }
#main-content.rufales-product-master .rufales-product-master__price .price,
#main-content.rufales-product-master .woocommerce-variation-price .price { display: block; padding: 0; margin: 0 0 18px; color: var(--rufales-color-forest-800); font: 400 clamp(25px,2.5vw,34px)/1.25 var(--rufales-font-sans); }
#main-content.rufales-product-master .price ins { text-decoration: none; background: none; }
#main-content.rufales-product-master .price del { font-size: .7em; color: #687067; }
#main-content.rufales-product-master form.cart { margin: 0; padding: 0; gap: 12px; }
#main-content.rufales-product-master form.cart .variations { border: 0; margin: 0 0 12px; border-collapse: separate; }
#main-content.rufales-product-master form.cart .variations tr { display: grid; grid-template-columns: minmax(0,44%) minmax(0,56%); align-items: center; margin: 8px 0 0; border: 1px solid #e3e2da; border-radius: 4px; background: #fff; }
#main-content.rufales-product-master form.cart .variations :is(th,td) { width: auto; min-width: 0; padding: 0; margin: 0; }
#main-content.rufales-product-master form.cart .variations label { margin: 0; padding: 10px; font: 600 15px/1.4 var(--rufales-font-sans); }
#main-content.rufales-product-master form.cart .variations td select { width: 100%; min-width: 0; max-width: 100%; margin: 0; min-height: 48px; border: 0; border-left: 1px solid #e3e2da; border-radius: 0; padding: 8px 22px 8px 10px; background: #fff; appearance: auto; font: 400 16px/1.4 var(--rufales-font-sans); color: var(--rufales-color-ink) !important; }
#main-content.rufales-product-master form.cart .reset_variations { padding: 6px 10px; font: 400 13px/1.4 var(--rufales-font-sans); color: #586650; }
#main-content.rufales-product-master .woocommerce-variation-add-to-cart { display: flex; flex-wrap: nowrap; gap: 10px; align-items: stretch; }
#main-content.rufales-product-master form.cart div.quantity { flex: 0 0 68px; margin: 0; float: none; }
#main-content.rufales-product-master form.cart .quantity .qty { width: 68px; height: 52px; margin: 0; padding: 8px; border: 1px solid #dedfd7; border-radius: 4px; background: #fff; color: var(--rufales-color-ink) !important; font: 500 16px/1.4 var(--rufales-font-sans); }
#main-content.rufales-product-master form.cart .single_add_to_cart_button { flex: 1 1 auto; width: auto; min-width: 0; min-height: 52px; margin: 0; padding: 12px 14px; border: 1px solid var(--rufales-color-forest-800); border-radius: 4px; background: var(--rufales-color-forest-800); color: #fff !important; font: 600 15px/1.3 var(--rufales-font-sans); line-height: 1.3 !important; text-transform: none; letter-spacing: 0; box-shadow: none; }
#main-content.rufales-product-master form.cart .single_add_to_cart_button::after { display: none; }
#main-content.rufales-product-master form.cart .single_add_to_cart_button:hover { background: var(--rufales-color-forest-800); }
#main-content.rufales-product-master form.cart .single_add_to_cart_button.disabled { opacity: .55; }
#main-content.rufales-product-master .rufales-product-master__trust { font: 400 14px/1.5 var(--rufales-font-sans); gap: 0; margin-top: 16px; padding-top: 12px; }
#main-content.rufales-product-master .rufales-product-gallery__thumbnails { gap: 8px; }
#main-content.rufales-product-master .rufales-product-gallery__thumbnails { grid-template-columns: repeat(5,minmax(0,1fr)); }
#main-content.rufales-product-master .screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
/* Native Divi uses !important on variation-cell padding. Keep the select aligned. */
#main-content.rufales-product-master form.cart .variations td { padding: 0 !important; }
#main-content.rufales-product-master form.cart .variations:has(.reset_variations) { position: relative; margin-bottom: 48px; }
#main-content.rufales-product-master form.cart .variations .reset_variations { position: absolute; left: 0; bottom: -44px; min-height: 44px; padding: 0; }
#main-content.rufales-product-master form.cart .variations tr { align-items: start; }
#main-content.rufales-product-master form.cart .variations th { display: flex; align-items: center; min-height: 48px; }
#main-content.rufales-product-master .rufales-product-master__trust p { font: 400 15px/1.6 var(--rufales-font-sans); padding: 0; margin: 6px 0 0; color: #535b53; }
#main-content.rufales-product-master .rufales-product-master__trust strong { font: 600 15px/1.5 var(--rufales-font-sans); }
/* Inline flow keeps Woo's final, unwrapped breadcrumb on the same baseline. */
#main-content:is(.rufales-product-master,.rufales-product-archive,.rufales-garden-master,.rufales-shop-master) .rufales-breadcrumbs { display: block; font: 400 13px/44px var(--rufales-font-sans); margin: 0 0 12px; }
#main-content:is(.rufales-product-master,.rufales-product-archive,.rufales-garden-master,.rufales-shop-master) .rufales-breadcrumbs a { display: inline-block; min-height: 44px; padding: 0; line-height: 44px; vertical-align: baseline; color: #53624f; }
#main-content:is(.rufales-product-master,.rufales-product-archive,.rufales-garden-master,.rufales-shop-master) .rufales-breadcrumbs > span { margin-inline: 8px; }
#main-content.rufales-product-master .rufales-product-master__details { max-width: none; margin-top: 28px; display: grid; gap: 8px; }
#main-content.rufales-product-master .rufales-product-master__details details { border: 1px solid #e3e2da; border-radius: 5px; background: #fff; }
#main-content.rufales-product-master .rufales-product-master__details summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 54px; padding: 14px 18px; list-style: none; font: 400 19px/1.35 var(--rufales-font-sans); }
#main-content.rufales-product-master .rufales-product-master__details summary::-webkit-details-marker { display: none; }
#main-content.rufales-product-master .rufales-product-master__details summary::after { content: '+'; flex-shrink: 0; font: 400 20px/1 sans-serif; color: #53654d; }
#main-content.rufales-product-master .rufales-product-master__details details[open] summary::after { content: '−'; }
#main-content.rufales-product-master .rufales-product-master__details :is(.rufales-product-copy,dl) { padding: 0 18px 18px; max-width: 82ch; }
#main-content.rufales-product-master .rufales-product-copy :is(p,li,td,th),
#main-content.rufales-product-master .rufales-product-master__details :is(dt,dd) { font: 400 16px/1.6 var(--rufales-font-sans); color: #4f574f; }
#main-content.rufales-product-master .rufales-product-copy p { padding: 0; margin: 0 0 12px; }
#main-content.rufales-product-master .rufales-product-copy p:last-child { margin-bottom: 0; }
#main-content.rufales-product-master .rufales-product-copy :is(h2,h3,h4) { font: 600 17px/1.4 var(--rufales-font-sans); padding: 0; margin: 16px 0 8px; }
#main-content.rufales-product-archive { font: 400 16px/1.6 var(--rufales-font-sans); padding-block: 24px 48px; }
#main-content.rufales-product-archive .rufales-product-archive__heading { margin: 16px 0 28px; }
#main-content.rufales-product-archive .rufales-product-archive__heading h1 {
	padding: 0;
	font: 600 var(--rufales-font-size-3xl)/var(--rufales-line-heading) var(--rufales-font-sans);
	letter-spacing: -.02em;
}
#main-content.rufales-product-archive .rufales-product-archive__heading p:not(.rufales-eyebrow) { font: 400 16px/1.6 var(--rufales-font-sans); padding: 0; }
#main-content.rufales-product-archive .rufales-live-product-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
#main-content.rufales-product-archive .rufales-live-product-grid { max-width: 1100px; }
#main-content.rufales-product-archive .rufales-live-product-grid:has(> :only-child) { grid-template-columns: minmax(0,350px); }
#main-content.rufales-product-archive .rufales-live-product-grid:has(> :nth-child(2):last-child) { grid-template-columns: repeat(2,minmax(0,1fr)); max-width: 724px; }
#main-content.rufales-product-archive .rufales-live-product-card__media { display: block; width: 100%; height: auto; aspect-ratio: 4/3; overflow: hidden; border: 1px solid #dedbd2; border-radius: 5px; background: #ebe8df; padding: 0; }
#main-content.rufales-product-archive .rufales-live-product-card__media img { display: block; width: 100%; height: 100%; max-width: none; max-height: none; min-height: 0; border: 0; border-radius: 0; box-sizing: border-box; object-fit: cover; object-position: center; aspect-ratio: auto; transform: none; }
#main-content.rufales-product-archive .rufales-live-product-card__media--contain { border-color: #dedbd2; background: #ebe8df; }
#main-content.rufales-product-archive .rufales-live-product-card__media--contain::before,
#main-content.rufales-product-archive .rufales-live-product-card__media--contain::after { display: none; }
#main-content.rufales-product-archive .rufales-live-product-card__media--contain img { position: relative; z-index: 2; padding: 0; background: transparent; object-fit: cover; }
#main-content.rufales-product-archive .rufales-live-product-card__body > strong { font: 600 var(--rufales-font-size-lg)/1.35 var(--rufales-font-sans); min-height: 2.7em; }
#main-content.rufales-product-archive .rufales-live-product-card__price { font: 600 16px/1.5 var(--rufales-font-sans); }
#main-content.rufales-product-archive .rufales-live-product-card__stock p { font: 400 14px/1.5 var(--rufales-font-sans); padding: 0; }
#main-content.rufales-product-archive .rufales-live-product-card__body > em { margin-top: auto; font: 500 14px/1.5 var(--rufales-font-sans); min-height: 32px; }
@media(max-width:800px) {
  #main-content.rufales-product-master .rufales-product-master__grid { grid-template-columns: minmax(0,1fr); gap: 18px; }
  #main-content.rufales-product-master .rufales-product-master__purchase { position: static; padding: 16px; }
  #main-content.rufales-product-master .rufales-product-master__lead :is(p,strong,b,span) { font-size: 15px; }
  #main-content.rufales-product-master .rufales-product-master__heading h1 {

	font: 600 var(--rufales-font-size-3xl)/var(--rufales-line-heading) var(--rufales-font-sans);
	letter-spacing: -.02em;
}
  #main-content.rufales-product-archive .rufales-live-product-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #main-content.rufales-product-archive .rufales-live-product-card__body > strong { font: 600 var(--rufales-font-size-lg)/1.35 var(--rufales-font-sans); min-height: 2.7em; }
  #main-content.rufales-product-archive .rufales-live-product-card__media { height: auto; aspect-ratio: 4/3; padding: 0; }
}

/* One stable full-frame 4:3 crop for every gallery image, including mobile. */
#main-content.rufales-product-master .rufales-product-gallery__main { position: relative; display: grid; width: 100%; aspect-ratio: 4/3; overflow: hidden; border: 0; border-radius: 5px; background: #eceae4; }
#main-content.rufales-product-master .rufales-product-gallery__main::before,
#main-content.rufales-product-master .rufales-product-gallery__main::after { display: none; }
#main-content.rufales-product-master .rufales-product-gallery__more summary { min-height: 44px; padding: 12px 0; cursor: pointer; font: 500 14px/1.4 var(--rufales-font-sans); color: #53624f; }
#main-content.rufales-product-master .rufales-product-gallery__main-image {
  display: block; width: 100%; height: 100%; max-width: none; max-height: none; min-height: 0;
  aspect-ratio: auto; padding: 0; border: 0; border-radius: 0;
  position: relative; z-index: 2; box-sizing: border-box; background: transparent; object-fit: cover; object-position: center;
}
#main-content.rufales-product-master .rufales-product-gallery__main-image--contain { object-fit: cover; }
#main-content.rufales-product-master .rufales-product-gallery--portrait { width: 100%; margin-inline: 0; }
#main-content.rufales-product-master .rufales-product-gallery--portrait .rufales-product-gallery__main { aspect-ratio: 4/3; }
#main-content.rufales-product-master .rufales-product-gallery--panoramic .rufales-product-gallery__main-image { padding: 0; }
#main-content.rufales-product-master .rufales-product-gallery__thumbnail { width: 100%; min-width: 0; min-height: 0; height: auto; aspect-ratio: 4/3; overflow: hidden; padding: 2px; background: #ebe8df; border: 1px solid #ece9e1; }
#main-content.rufales-product-master .rufales-product-gallery__thumbnail img { display: block; width: 100%; height: 100%; max-height: none; aspect-ratio: auto; object-fit: cover; object-position: center; }
#main-content.rufales-product-master .rufales-product-gallery__thumbnail--contain { background: transparent; }
#main-content.rufales-product-master .rufales-product-gallery__thumbnail--contain img { padding: 0; background: transparent; object-fit: cover; }
#main-content.rufales-product-master .rufales-product-gallery__thumbnail[aria-pressed="true"] { border-color: var(--rufales-color-forest-800); }
@media(max-width:420px) {
  #main-content.rufales-product-master form.cart .variations tr { grid-template-columns: minmax(0,40%) minmax(0,60%); }
  #main-content.rufales-product-master form.cart .variations label { font-size: 13px; padding: 8px; }
  #main-content.rufales-product-master form.cart .variations td select { font-size: 15px; padding: 8px 18px 8px 8px; }
  #main-content.rufales-product-master .rufales-product-master__purchase { padding: 12px; }
  #main-content.rufales-product-master .rufales-product-master__details summary { font-size: 17px; padding-inline: 14px; }
  #main-content.rufales-product-archive .rufales-live-product-card__body > strong { font: 600 var(--rufales-font-size-lg)/1.35 var(--rufales-font-sans); min-height: 2.7em; }
}

/* Raised-bed editorial detail stays below the catalog, not in its purchase flow. */
#main-content.rufales-product-archive .rufales-raised-bed-details { max-width: 1100px; margin-top: 28px; display: grid; gap: 8px; }
#main-content.rufales-product-archive .rufales-raised-bed-details details { border: 1px solid #e3e2da; border-radius: 5px; background: #fff; }
#main-content.rufales-product-archive .rufales-raised-bed-details summary { display: flex; justify-content: space-between; align-items: center; gap: 16px; list-style: none; min-height: 54px; padding: 14px 18px; cursor: pointer; font: 400 19px/1.35 var(--rufales-font-sans); }
#main-content.rufales-product-archive .rufales-raised-bed-details summary::-webkit-details-marker { display: none; }
#main-content.rufales-product-archive .rufales-raised-bed-details summary::after { content: '+'; flex-shrink: 0; font: 400 20px/1 sans-serif; color: #53654d; }
#main-content.rufales-product-archive .rufales-raised-bed-details details[open] summary::after { content: '−'; }
#main-content.rufales-product-archive:has(.rufales-raised-bed-details) .rufales-product-archive__heading p + p,
#main-content.rufales-product-master:is([data-product-id="1670"],[data-product-id="3219"],[data-product-id="3240"],[data-product-id="5295"]) .rufales-product-master__lead p + p { margin-top: 12px; }
#main-content.rufales-product-archive .rufales-raised-bed-details details > div { padding: 0 18px 18px; max-width: 82ch; }
#main-content.rufales-product-archive .rufales-raised-bed-details p { font: 400 15px/1.65 var(--rufales-font-sans); margin: 0 0 12px; padding: 0; }
/* Purchase Card v2: native Woo controls, one price area below the options. */
#main-content.rufales-product-master .rufales-purchase-card { position: static; background: #fffefa; border: 1px solid #dedfd7; box-shadow: none; }
#main-content.rufales-product-master .single_variation_wrap { display: flex; flex-direction: column; width: 100%; }
#main-content.rufales-product-master .single_variation_wrap > .single_variation { order: 1; }
#main-content.rufales-product-master .rufales-purchase-tax { order: 2; display: block; font: 400 13px/1.4 var(--rufales-font-sans); color: #60675f; margin: 0 0 12px; }
#main-content.rufales-product-master .single_variation_wrap > .woocommerce-variation-add-to-cart { order: 3; }
#main-content.rufales-product-master :is(.rufales-product-master__price .price,.woocommerce-variation-price .price) { font: 600 var(--rufales-price-size)/1.25 var(--rufales-font-sans); color: var(--rufales-color-forest-800) !important; margin: 0 0 4px; overflow-wrap: anywhere; }
#main-content.rufales-product-master .woocommerce-variation-price { margin: 0; }
#main-content.rufales-product-master .price :is(.amount,bdi,.woocommerce-Price-currencySymbol) { color: inherit !important; font: inherit !important; margin: 0 !important; padding: 0; }
#main-content.rufales-product-master .rufales-product-master__price:has(+ .rufales-purchase-tax) { margin: 0; }
#main-content.rufales-product-master .variations_form .rufales-product-master__price .price { font-size: 28px; color: #53624f !important; }
#main-content.rufales-product-master form.cart:not(.variations_form) { display: flex; flex-wrap: wrap; }
#main-content.rufales-product-master form.cart:not(.variations_form) > :is(.rufales-product-master__price,.rufales-purchase-tax) { flex-basis: 100%; order: 0; }
#main-content.rufales-product-master form.cart .single_add_to_cart_button { min-height: 54px; }

/* Product 4973: independent server-side service add-on, not a variation row. */
#main-content.rufales-product-master .rufales-coop-addon { width: 100%; margin: 4px 0 16px; padding: 14px; border: 1px solid #d8d4ca; border-radius: 4px; background: var(--rufales-color-canvas); }
#main-content.rufales-product-master .rufales-coop-addon legend { padding: 0 5px; font: 600 15px/1.4 var(--rufales-font-sans); color: #27352b; }
#main-content.rufales-product-master .rufales-coop-addon__notice { margin: 0 0 10px; padding: 0; font: 600 14px/1.5 var(--rufales-font-sans); color: var(--rufales-color-forest-800); }
#main-content.rufales-product-master .rufales-coop-addon__option { display: flex; align-items: flex-start; gap: 9px; min-height: 44px; margin: 0; padding: 10px 0; border-top: 1px solid #e3e2da; font: 500 14px/1.45 var(--rufales-font-sans); cursor: pointer; }
#main-content.rufales-product-master .rufales-coop-addon__option input { flex: 0 0 auto; width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--rufales-color-forest-800); }
#main-content.rufales-product-master .rufales-coop-addon__copy { margin: 8px 0 0; padding: 0; font: 400 13px/1.5 var(--rufales-font-sans); color: #60675f; }
@media(min-width:801px) {
  #main-content.rufales-product-master[data-product-id="7799"] { padding-block: 8px 40px; }
  #main-content.rufales-product-master[data-product-id="7799"] .rufales-breadcrumbs { margin-bottom: 4px; }
  #main-content.rufales-product-master[data-product-id="7799"] .rufales-product-master__heading { margin-bottom: 14px; }
  #main-content.rufales-product-master[data-product-id="7799"] .rufales-product-master__heading h1 {
	margin-bottom: 8px;
	font: 600 var(--rufales-font-size-3xl)/var(--rufales-line-heading) var(--rufales-font-sans);
	letter-spacing: -.02em;
}
  #main-content.rufales-product-master[data-product-id="7799"] .rufales-product-master__lead { max-width: none; }
  #main-content.rufales-product-master[data-product-id="7799"] .rufales-product-master__lead p { font-size: 16px; line-height: 1.5; margin: 0; }
  #main-content.rufales-product-master[data-product-id="7799"] .rufales-product-master__purchase { padding: 16px; }
  #main-content.rufales-product-master[data-product-id="7799"] .rufales-product-gallery__main { max-width: 640px; }
  #main-content.rufales-product-master[data-product-id="7799"] .rufales-product-gallery__thumbnails { margin-top: 8px; }
  #main-content.rufales-product-master[data-product-id="7799"] .rufales-product-gallery__thumbnail img { max-height: none; object-fit: cover; }
  #main-content.rufales-product-master[data-product-id="7799"] .rufales-product-master__trust { margin-top: 10px; padding-top: 8px; }
}
@media(max-width:800px) {
  #main-content.rufales-product-master :is(.rufales-product-master__price .price,.woocommerce-variation-price .price) { font-size: 32px; }
  #main-content.rufales-product-master .variations_form .rufales-product-master__price .price { font-size: 30px; }
}

/* Product gallery v2: one compact rail, direct navigation, no vertical thumbnail overflow. */
#main-content.rufales-product-master .rufales-product-gallery__main { touch-action: pan-y; }
#main-content.rufales-product-master .rufales-product-gallery__main:focus-visible { outline: 3px solid var(--rufales-color-focus); outline-offset: 3px; }
#main-content.rufales-product-master .rufales-product-gallery__nav {
  position: absolute; z-index: 4; top: 50%; display: grid; place-items: center;
  width: 54px; height: 76px; min-width: 54px; padding: 0; margin: 0;
  border: 0; border-radius: 6px; background: transparent; color: #fff;
  box-shadow: none; opacity: .88; transform: translateY(-50%);
  cursor: pointer; transition: background-color .18s ease, opacity .18s ease, transform .18s ease;
}
#main-content.rufales-product-master .rufales-product-gallery__nav span { display: block; margin-top: -4px; font: 300 52px/1 var(--rufales-font-sans); text-shadow: 0 2px 8px rgba(0,0,0,.82), 0 0 2px rgba(0,0,0,.65); }
#main-content.rufales-product-master .rufales-product-gallery__nav--previous { left: 6px; }
#main-content.rufales-product-master .rufales-product-gallery__nav--next { right: 6px; }
#main-content.rufales-product-master .rufales-product-gallery__nav:hover { background: rgba(23,33,27,.22); opacity: 1; transform: translateY(-50%) scale(1.04); }
#main-content.rufales-product-master .rufales-product-gallery__nav:focus-visible { outline: 3px solid var(--rufales-color-focus); outline-offset: 2px; }
#main-content.rufales-product-master .rufales-product-gallery__counter {
  position: absolute; z-index: 4; right: 12px; bottom: 12px; margin: 0; padding: 5px 10px;
  border-radius: 999px; background: rgba(23,33,27,.78); color: #fff;
  font: 600 13px/1.3 var(--rufales-font-sans); letter-spacing: .03em;
}
#main-content.rufales-product-master .rufales-product-gallery__thumbnails {
  display: flex; gap: 8px; margin-top: 10px; padding: 2px 2px 8px;
  overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: x proximity;
  scrollbar-width: thin; scrollbar-color: rgba(23,33,27,.38) transparent;
}
#main-content.rufales-product-master .rufales-product-gallery__thumbnail {
  flex: 0 0 calc((100% - 32px) / 5); width: auto; max-width: 112px; scroll-snap-align: center; cursor: pointer;
  border-radius: 4px; transition: border-color .16s ease, box-shadow .16s ease, opacity .16s ease;
}
#main-content.rufales-product-master .rufales-product-gallery__thumbnail:not([aria-pressed="true"]) { opacity: .76; }
#main-content.rufales-product-master .rufales-product-gallery__thumbnail:is(:hover,[aria-pressed="true"]) { opacity: 1; }
#main-content.rufales-product-master .rufales-product-gallery__thumbnail[aria-pressed="true"] { border-width: 2px; box-shadow: 0 0 0 1px var(--rufales-color-forest-800); }
#main-content.rufales-product-master .rufales-product-gallery__thumbnail:focus-visible { outline: 3px solid var(--rufales-color-focus); outline-offset: 2px; }
@media(max-width:600px) {
  #main-content.rufales-product-master .rufales-product-gallery__nav { width: 48px; height: 68px; min-width: 48px; }
  #main-content.rufales-product-master .rufales-product-gallery__nav--previous { left: 2px; }
  #main-content.rufales-product-master .rufales-product-gallery__nav--next { right: 2px; }
  #main-content.rufales-product-master .rufales-product-gallery__counter { right: 8px; bottom: 8px; }
  #main-content.rufales-product-master .rufales-product-gallery__thumbnail { flex-basis: calc((100% - 24px) / 4); }
}
@media(prefers-reduced-motion:reduce) {
  #main-content.rufales-product-master .rufales-product-gallery__nav,
  #main-content.rufales-product-master .rufales-product-gallery__thumbnail { transition: none; }
  #main-content.rufales-product-master .rufales-product-gallery__thumbnails { scroll-behavior: auto; }
}
