.cms-partner-logo { width: 100px; max-height: 65px; object-fit: contain; object-position: left center; margin-block: .5rem; }
html[lang="ar"] .cms-partner-logo { object-position: right center; }
.cms-specifications { margin-top: 1.5rem; }
.cms-specifications dl { break-inside: avoid; }
.cms-detail { border-block: 1px solid #cbd7cc; margin-block: .75rem; }
.cms-detail > summary { cursor: pointer; padding: 1rem .25rem; font-weight: 600; min-height: 48px; }
.cms-detail > summary:focus-visible { outline: 3px solid #4a7548; outline-offset: 3px; }
.cms-detail-content { padding-block: 1rem; }
.cms-partnership-note { margin-top: 1.5rem; padding-top: 1rem; border-top: 1px solid #cbd7cc; }
.product-story[data-studio-layout="simple"] .crop-explorer { padding-block: 1.5rem; }
.product-story .story-country { max-width: 100%; min-height: 48px; }
@media print {
      .cms-detail > summary { display: none; }
  .cms-detail { border: 0; }
}
/* Brand and pack-size picker on product pages (markup in pack-picker.js) */
.pack-picker { margin-block: 1.25rem 1.6rem; display: grid; gap: 1rem; max-width: 34rem; padding: 1rem 1.1rem 1.1rem; border: 1px solid #d9e4d3; border-radius: 20px 6px 20px 6px; background: rgb(255 255 255 / .72); }
.pack-picker-row { display: grid; gap: .5rem; }
.pack-picker-label { margin: 0; font-size: .72rem; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; color: #5a6b5f; }
html[lang="ar"] .pack-picker-label { font-size: .85rem; letter-spacing: 0; text-transform: none; }
.pack-brands, .pack-sizes { display: flex; flex-wrap: wrap; gap: .5rem; }
.pack-brand { display: inline-flex; align-items: center; gap: .6rem; min-height: 48px; padding: .45rem .95rem; border: 1.5px solid #d3dfcd; border-radius: 14px; background: #fff; color: inherit; font: inherit; cursor: pointer; transition: border-color .2s, background-color .2s; }
.pack-brand img { height: 24px; width: auto; max-width: 84px; object-fit: contain; }
.pack-brand span { font-weight: 600; line-height: 1.1; }
.pack-brand small { font-size: .78rem; color: #5a6b5f; }
.pack-brand[aria-pressed="true"] { border-color: #116f38; background: #f1f7ec; }
.pack-brand:hover { border-color: #8ab88f; }
.pack-size { min-height: 44px; min-width: 72px; padding: .45rem 1rem; border: 1.5px solid #d3dfcd; border-radius: 999px; background: #fff; color: inherit; font: inherit; font-weight: 600; cursor: pointer; transition: background-color .2s, border-color .2s, color .2s; }
.pack-size:hover { border-color: #8ab88f; }
.pack-size[aria-pressed="true"] { background: #0c3a20; border-color: #0c3a20; color: #fff; }
.pack-size-note { align-self: center; font-size: .85rem; color: #5a6b5f; margin-inline-start: .25rem; }
.pack-brand:focus-visible, .pack-size:focus-visible { outline: 3px solid #8ac148; outline-offset: 2px; }
.story-bag { transition: opacity .16s ease; }
.story-bag.pack-swap { opacity: 0; }
.card-brands { margin: .2rem 0 0; font-size: .8rem; color: #5a6b5f; }
@media (prefers-reduced-motion: reduce) { .story-bag, .pack-brand, .pack-size { transition: none; } }
@media print { .pack-picker { border: 0; padding: 0; } .pack-picker button:not([aria-pressed="true"]) { display: none; } }
