/* Karta produktu (makieta „Karta produktu FitME”): własna paleta - tło #f7f7f4,
 * tekst #1e1e1c, linie #e3e3de/#d6d6d0, kafle #e8e8e4 i #bcd4a7, karty #fbfbf9. */

@keyframes fmUp { from { transform: translateY(102%); } to { transform: translateY(0); } }

body.fm-pdp-page { background: #f7f7f4; }
body.fm-pdp-page.fm-sticky-on { padding-bottom: 88px; }
.fm-pdp { color: #1e1e1c; --pw: 1320px; --pg: clamp(16px, 4vw, 24px); }
.fm-pdp a:not(.fm-btn) { color: #1e1e1c; }

.fm-pdp__crumbs { max-width: var(--pw); margin: 0 auto; padding: 16px var(--pg) 0; }

/* Sekcja zakupu */
.fm-pdp__buy { max-width: var(--pw); margin: 0 auto; padding: 24px; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)); gap: 48px; align-items: start; }

.fm-gal { display: flex; flex-direction: column; gap: 12px; min-width: 0; position: sticky; top: 96px; }
.admin-bar .fm-gal { top: 128px; }
.fm-gal__main { background: #fff; border: 1px solid #e3e3de; border-radius: 8px; overflow: hidden; position: relative; }
.fm-gal__main img { display: block; width: 100%; aspect-ratio: 1 / 1; object-fit: contain; background: #fff; }
.fm-gal__badges { position: absolute; top: 16px; left: 16px; display: flex; flex-direction: column; gap: 6px; align-items: flex-start; }
.fm-pbadge { font-family: var(--mono); font-size: 11px; font-weight: 700; letter-spacing: 0.06em; padding: 6px 10px; border-radius: 4px; line-height: normal; }
.fm-pbadge.is-sale { background: var(--red); color: #fff; }
.fm-pbadge.is-sage { background: var(--sage); color: #1e1e1c; }
.fm-gal__thumbs { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, max(64px, (100% - 50px) / 6)), 1fr)); gap: 10px; }
.fm-gal__t { padding: 0; cursor: pointer; background: #fff; border-radius: 6px; overflow: hidden; position: relative; aspect-ratio: 1 / 1; border: 2px solid #e3e3de; }
.fm-gal__t.is-on { border-color: #1e1e1c; }
.fm-gal__t img { display: block; width: 100%; height: 100%; object-fit: cover; }

.fm-pcol { display: flex; flex-direction: column; gap: 20px; min-width: 0; }
.fm-pcol__head { display: flex; flex-direction: column; gap: 10px; }
.fm-pcol__eyebrow { font-family: var(--mono); font-size: 12px; letter-spacing: 0.08em; color: var(--muted-2); text-transform: uppercase; line-height: normal; }
.fm-pcol__title { margin: 0; font-size: clamp(28px, 4.2vw, 38px); line-height: 1.06; font-weight: 900; letter-spacing: -0.02em; text-wrap: pretty; }
.fm-pcol__rate { display: inline-flex; align-items: center; gap: 10px; width: fit-content; padding: 4px 0; border-bottom: 1px solid #d6d6d0; }
.fm-pcol__rv { font-family: var(--mono); font-size: 13px; font-weight: 700; }
.fm-pcol__rn { font-family: var(--mono); font-size: 12px; color: var(--muted); }
.fm-pcol__lead { background: #e8e8e4; border-radius: 8px; padding: 22px; display: flex; flex-direction: column; gap: 16px; }
.fm-pcol__lead p { font-size: 19px; line-height: 1.4; font-weight: 700; color: #1e1e1c; text-wrap: pretty; }
.fm-pcol__lead ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 11px; }
.fm-pcol__lead li { display: flex; gap: 11px; align-items: flex-start; font-size: 15px; line-height: 1.45; }
.fm-pcol__ok { flex: none; width: 20px; height: 20px; border-radius: 50%; background: #1e1e1c; color: #fff; font-size: 12px; display: flex; align-items: center; justify-content: center; margin-top: 1px; }
.fm-pcol__opt { display: flex; flex-direction: column; gap: 12px; }
.fm-pcol__optl { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; flex-wrap: wrap; }
.fm-pcol__lbl { font-family: var(--mono); font-size: 12px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--muted); }
.fm-pcol__optv { font-size: 14px; font-weight: 700; }
.fm-flavors { display: flex; flex-wrap: wrap; gap: 8px; }
.fm-flavor { display: flex; align-items: center; gap: 9px; padding: 9px 14px 9px 11px; border-radius: 100px; font-size: 14px; font-weight: 500; background: #fff; border: 2px solid #d6d6d0; line-height: normal; }
.fm-pdp a.fm-flavor.is-on { background: #1e1e1c; color: #fff; border-color: #1e1e1c; font-weight: 700; }
.fm-pdp a.fm-flavor:not(.is-on):hover { border-color: #1e1e1c; }
.fm-flavor__dot { width: 14px; height: 14px; border-radius: 50%; flex: none; box-shadow: inset 0 0 0 1px rgba(30, 30, 28, 0.18); }
.fm-flavor__out { font-family: var(--mono); font-size: 10px; letter-spacing: 0.06em; color: var(--muted-2); }
.fm-sizes { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 150px), 1fr)); gap: 10px; }
.fm-size { text-align: left; padding: 14px 16px; border-radius: 8px; display: flex; flex-direction: column; gap: 4px; background: #fff; border: 2px solid #d6d6d0; }
.fm-size.is-on { background: #e8e8e4; border-color: #1e1e1c; }
.fm-size__l { font-size: 15px; font-weight: 700; }
.fm-size__m { font-family: var(--mono); font-size: 12px; color: var(--muted); }
.fm-size__p { font-family: var(--mono); font-size: 13px; font-weight: 700; margin-top: 2px; }
.fm-stock { display: flex; align-items: center; gap: 10px; font-size: 14px; }
.fm-stock__dot { width: 9px; height: 9px; border-radius: 50%; flex: none; background: #4c8a3f; }
.fm-stock__dot.is-out { background: var(--red); }
.fm-stock__l { font-weight: 700; }
.fm-stock__n { color: var(--muted); }
.fm-notify { background: #fff; border: 1px dashed #b9b9b2; border-radius: 8px; padding: 16px; display: flex; flex-direction: column; gap: 10px; }
.fm-notify__t { font-size: 14px; font-weight: 700; }
.fm-notify__f { display: flex; gap: 8px; flex-wrap: wrap; margin: 0; }
.fm-theme .fm-notify__f input { flex: 1 1 180px; min-width: 0; padding: 12px 14px; border: 1px solid #d6d6d0; border-radius: 6px; font-size: 14px; outline: none; height: auto; box-shadow: none; }
.fm-notify__f button { cursor: pointer; padding: 12px 18px; border: none; border-radius: 6px; background: #1e1e1c; color: #fff; font-family: var(--mono); font-size: 12px; font-weight: 700; letter-spacing: 0.06em; }
.fm-pcol__sep { height: 1px; background: #e3e3de; }
.fm-pprice { display: flex; align-items: flex-end; gap: 14px; flex-wrap: wrap; }
.fm-pprice__v { font-size: 36px; font-weight: 900; letter-spacing: -0.02em; line-height: 1; }
.fm-pprice__o { font-family: var(--mono); font-size: 16px; color: var(--muted-2); text-decoration: line-through; }
.fm-pprice__pp { background: var(--sage); font-family: var(--mono); font-size: 12px; font-weight: 700; padding: 5px 9px; border-radius: 4px; }
.fm-pprice__100 { font-family: var(--mono); font-size: 12px; color: var(--muted); }
.fm-omnibus { font-family: var(--mono); font-size: 11px; color: var(--muted); letter-spacing: 0.02em; margin-top: -12px; }
.fm-pactions { display: flex; flex-direction: column; gap: 10px; }
.fm-pactions__row { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }
.fm-stepper--lg { border: 2px solid #1e1e1c; padding: 4px; }
.fm-stepper--lg button { width: 40px; height: 40px; font-size: 20px; }
.fm-stepper--lg button:hover { background: #f2f2ee; }
.fm-stepper--lg span { min-width: 28px; font-size: 16px; }
.fm-pactions__add { cursor: pointer; flex: 1 1 220px; min-width: 0; min-height: 56px; border: none; border-radius: 100px; background: #1e1e1c; color: #fff; padding: 0 clamp(16px, 4vw, 24px); font-size: 16px; font-weight: 700; display: flex; align-items: center; justify-content: center; gap: 12px; white-space: nowrap; transition: background 200ms; }
.fm-pactions__add:hover { background: var(--red); }
.fm-pactions__sum { font-family: var(--mono); font-weight: 700; opacity: 0.75; }
.fm-pfav { cursor: pointer; width: 100%; min-height: 50px; border-radius: 100px; display: flex; align-items: center; justify-content: center; gap: 10px; font-size: 15px; font-weight: 700; line-height: 1; border: 2px solid #1e1e1c; background: #fff; color: var(--muted); }
.fm-pfav.is-on { border-color: var(--red); background: var(--red); color: #fff; }
.fm-pfav__h { font-size: 18px; }
.fm-pfree { background: #fff; border: 1px solid #e3e3de; border-radius: 8px; padding: 16px; display: flex; flex-direction: column; gap: 10px; }
.fm-pfree__l { font-size: 14px; line-height: 1.4; }
.fm-pfree__track { height: 8px; border-radius: 100px; background: #e8e8e4; overflow: hidden; }
.fm-pfree__track span { display: block; height: 100%; background: var(--sage); border-radius: 100px; transition: width 200ms; }
.fm-pfree__n { font-family: var(--mono); font-size: 11px; color: var(--muted-2); letter-spacing: 0.04em; }
.fm-ptrust { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(45%, 120px), 1fr)); gap: 12px; padding: 4px 0; }
.fm-ptrust__i { display: flex; flex-direction: column; align-items: center; gap: 6px; text-align: center; }
.fm-ptrust__i img { width: 36px; height: 36px; object-fit: contain; }
.fm-ptrust__i span { font-size: 11px; line-height: 1.3; color: var(--muted); }

/* Akordeon informacji */
.fm-acc--pdp { display: flex; flex-direction: column; border-top: 1px solid #e3e3de; }
.fm-acc--pdp .fm-acc__i { border-bottom: 1px solid #e3e3de; }
.fm-acc--pdp .fm-acc__q { padding: 17px 2px; font-size: 15px; align-items: center; gap: 12px; color: #1e1e1c; }
.fm-acc--pdp .fm-acc__s { font-size: 18px; }
.fm-pacc { padding: 0 2px 20px; font-size: 14px; line-height: 1.55; color: var(--body); display: flex; flex-direction: column; gap: 12px; }
.fm-pacc p { margin: 0; }
.fm-pacc > * + * { margin-top: 0; }
.fm-pacc img.alignnone { display: inline; vertical-align: -1px; }
.fm-pacc strong { color: #1e1e1c; }
.fm-pacc ul, .fm-pacc ol { margin: 0; padding-left: 1.2em; }
.fm-pacc__txt { display: flex; flex-direction: column; gap: 10px; }
.fm-pacc__txt--sm { font-size: 12px; line-height: 1.5; color: var(--muted); }
.fm-ntable__title { font-size: 13px; font-weight: 700; }
.fm-ntable__scroll { overflow-x: auto; }
.fm-ntable { display: grid; grid-template-columns: minmax(0, 1.4fr) repeat(var(--cols, 2), minmax(0, 1fr)); gap: 1px; background: #e3e3de; border: 1px solid #e3e3de; border-radius: 6px; overflow: hidden; font-family: var(--mono); font-size: 12px; min-width: 420px; }
.fm-ntable__h { background: #e8e8e4; padding: 9px 10px; font-weight: 700; }
.fm-ntable__c { background: #fff; padding: 9px 10px; white-space: pre-line; }
.fm-ntable__c.is-b { font-weight: 700; }

/* Sekcje 01-05 */
.fm-psec { max-width: var(--pw); margin: 0 auto; padding: 20px var(--pg) 0; }
.fm-psec--first { padding-top: 56px; }
.fm-psec--56 { padding-top: 56px; display: flex; flex-direction: column; gap: 20px; }
.fm-psec__box { border-radius: 12px; padding: clamp(22px, 4vw, 40px) clamp(18px, 3.5vw, 32px); display: flex; flex-direction: column; gap: 28px; }
.fm-psec__box.is-sage { background: var(--sage); }
.fm-psec__box.is-grey { background: #e8e8e4; }
.fm-psec__head { display: flex; flex-direction: column; gap: 8px; max-width: 640px; }
.fm-psec__head--700 { max-width: 700px; }
.fm-psec__k { font-family: var(--mono); font-size: 12px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--sage-ink); }
.fm-psec__k.is-grey { color: var(--muted); }
.fm-psec__h { margin: 0; font-size: clamp(26px, 4vw, 34px); line-height: 1.08; font-weight: 900; letter-spacing: -0.02em; text-wrap: pretty; }
.fm-psec__p { font-size: 15px; line-height: 1.55; color: var(--body); }
/* Maks. 3 karty w rzędzie - auto-fit robił 5 + sierotę w drugim rzędzie. */
.fm-effects { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.fm-effect { background: #fbfbf9; border-radius: 10px; padding: 24px; display: flex; flex-direction: column; gap: 12px; }
.fm-effect__star { font-size: 30px; color: var(--sage-ink); line-height: 1; }
.fm-effect__t { font-size: 18px; font-weight: 900; line-height: 1.2; text-wrap: pretty; }
.fm-effect__p { font-size: 14px; line-height: 1.5; color: var(--body); }
.fm-ingrs { display: flex; flex-direction: column; gap: 1px; background: #d6d6d0; border-radius: 10px; overflow: hidden; }
.fm-ingrr { background: #fbfbf9; padding: 20px clamp(16px, 4vw, 24px); display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 20px; align-items: center; }
.fm-ingrr__n { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.fm-ingrr__name { font-size: 17px; font-weight: 900; }
.fm-ingrr__dose { font-family: var(--mono); font-size: 12px; color: var(--red); font-weight: 700; }
.fm-ingrr__e { font-size: 14px; line-height: 1.5; color: var(--body); text-wrap: pretty; }
.fm-psec__box--who { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 36px; align-items: center; }
.fm-who__img { width: 100%; aspect-ratio: 3 / 4; object-fit: cover; border-radius: 10px; display: block; }
.fm-who { display: flex; flex-direction: column; gap: 24px; min-width: 0; }
.fm-who__list { display: flex; flex-direction: column; gap: 2px; border-radius: 10px; overflow: hidden; }
.fm-who__row { padding: 18px 20px; display: flex; gap: 14px; align-items: center; background: #fbfbf9; font-size: 15px; line-height: 1.45; font-weight: 500; text-wrap: pretty; }
.fm-who__row.is-alt { background: #eef4e8; }
.fm-who__ok { flex: none; width: 30px; height: 30px; border-radius: 50%; background: var(--sage-ink); color: #fff; display: flex; align-items: center; justify-content: center; font-size: 15px; font-weight: 700; }
.fm-cmp { border-radius: 10px; overflow: hidden; display: grid; grid-template-columns: minmax(0, 1.3fr) repeat(3, minmax(0, 1fr)); gap: 1px; background: #d6d6d0; }
.fm-cmp__h0 { background: #1e1e1c; color: #fff; padding: 16px 18px; font-family: var(--mono); font-size: 12px; letter-spacing: 0.06em; }
.fm-cmp__h1 { background: var(--sage); padding: 16px 12px; font-size: 14px; font-weight: 900; text-align: center; }
.fm-cmp__h2 { background: #efefeb; padding: 16px 12px; font-size: 13px; font-weight: 700; text-align: center; color: var(--muted); }
.fm-cmp__l { background: #fbfbf9; padding: 15px 18px; font-size: 14px; font-weight: 700; }
.fm-cmp__us { background: #f3f7ef; padding: 15px 12px; font-size: 14px; font-weight: 700; text-align: center; font-family: var(--mono); }
.fm-cmp__v { background: #fbfbf9; padding: 15px 12px; font-size: 14px; text-align: center; color: var(--muted); font-family: var(--mono); }
.fm-cmpm { display: none; flex-direction: column; gap: 10px; }
.fm-cmpm__i { background: #fbfbf9; border-radius: 10px; overflow: hidden; display: flex; flex-direction: column; }
.fm-cmpm__h { background: #1e1e1c; color: #fff; padding: 10px 14px; font-size: 14px; font-weight: 700; }
.fm-cmpm__g { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: #d6d6d0; }
.fm-cmpm__g > div { background: #fbfbf9; padding: 10px 8px; display: flex; flex-direction: column; gap: 4px; align-items: center; text-align: center; }
.fm-cmpm__g > div.is-us { background: #f3f7ef; }
.fm-cmpm__g span:first-child { font-family: var(--mono); font-size: 9px; letter-spacing: 0.06em; color: var(--muted-2); }
.fm-cmpm__g .is-us span:first-child { color: var(--sage-ink); }
.fm-cmpm__g span:last-child { font-family: var(--mono); font-size: 13px; color: var(--muted); }
.fm-cmpm__g .is-us span:last-child { font-weight: 700; color: #1e1e1c; }
.fm-cmp__img { width: 100%; border-radius: 10px; display: block; }
.fm-isteps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.fm-istep { background: #fbfbf9; border-radius: 10px; overflow: hidden; display: flex; flex-direction: column; }
.fm-istep__img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; display: block; }
.fm-istep__c { padding: 20px; display: flex; flex-direction: column; gap: 8px; }
.fm-istep__k { font-family: var(--mono); font-size: 12px; font-weight: 700; color: var(--sage-ink); letter-spacing: 0.08em; }
.fm-istep__t { font-size: 17px; font-weight: 900; line-height: 1.2; }
.fm-istep__p { font-size: 14px; line-height: 1.5; color: var(--body); }

/* Uzupełnij zestaw, opinie, FAQ, inni kupili też */
.fm-sechead--pdp { align-items: flex-end; }
.fm-sechead__col { display: flex; flex-direction: column; gap: 6px; }
.fm-h2--pdp { font-size: 28px; font-weight: 900; letter-spacing: -0.02em; line-height: 1.15; }
.fm-sechead__mono { font-family: var(--mono); font-size: 12px; color: var(--muted); }
.fm-sechead__rate .fm-sechead__mono { font-weight: 400; }
.fm-pdp a.fm-sechead__link { font-weight: 700; letter-spacing: 0.06em; color: #1e1e1c; }
.fm-bundles { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, max(240px, (100% - 42px) / 4)), 1fr)); gap: 14px; }
.fm-bundle { background: #fff; border-radius: 10px; padding: 16px; display: flex; gap: 16px; align-items: center; border: 2px solid #e3e3de; }
.fm-bundle.is-on { border-color: #1e1e1c; }
.fm-bundle img { width: 76px; height: 76px; object-fit: contain; flex: none; background: #f7f7f4; border-radius: 8px; display: block; }
.fm-bundle__c { display: flex; flex-direction: column; gap: 5px; min-width: 0; flex: 1 1 auto; }
.fm-bundle__n { font-size: 14px; font-weight: 700; line-height: 1.3; text-wrap: pretty; }
.fm-bundle__p { font-family: var(--mono); font-size: 13px; font-weight: 700; }
.fm-bundle__b { cursor: pointer; flex: none; width: 36px; height: 36px; border-radius: 50%; border: 2px solid #1e1e1c; font-size: 16px; font-weight: 700; background: #fff; color: #1e1e1c; padding: 0; }
.fm-bundle.is-on .fm-bundle__b { background: #1e1e1c; color: #fff; }
.fm-reviews--pdp .fm-review { border: 1px solid #e3e3de; }
.fm-reviews--pdp .fm-stars { font-size: 15px; }
.fm-tpbox { background: #fff; border: 1px dashed #b9b9b2; border-radius: 10px; padding: 24px; }
.fm-pfaq { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 36px; align-items: start; }
.fm-pfaq__l { display: flex; flex-direction: column; gap: 10px; }
.fm-pfaq__l p { font-size: 14px; line-height: 1.55; color: var(--muted); }
.fm-pfaq__l a { text-decoration: underline; }
.fm-acc--pfaq { display: flex; flex-direction: column; border-top: 1px solid #e3e3de; }
.fm-acc--pfaq .fm-acc__i { border-bottom: 1px solid #e3e3de; }
.fm-acc--pfaq .fm-acc__q { padding: 18px 2px; font-size: 16px; color: #1e1e1c; }
.fm-acc--pfaq .fm-acc__s { font-size: 18px; }
.fm-acc--pfaq .fm-acc__a p { padding: 0 2px 20px; font-size: 14px; line-height: 1.6; color: var(--body); max-width: 66ch; }
.fm-xsell { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, max(230px, (100% - 42px) / 4)), 1fr)); gap: 14px; }
.fm-xcard { background: #fff; border: 1px solid #e3e3de; border-radius: 10px; overflow: hidden; display: flex; flex-direction: column; }
.fm-xcard__img { background: #f7f7f4; padding: 18px; display: block; }
.fm-xcard__img img { width: 100%; aspect-ratio: 1 / 1; object-fit: contain; display: block; }
.fm-xcard__c { padding: 18px; display: flex; flex-direction: column; gap: 8px; flex: 1 1 auto; }
.fm-xcard__cat { font-family: var(--mono); font-size: 11px; letter-spacing: 0.06em; color: var(--muted-2); text-transform: uppercase; }
.fm-xcard__n { font-size: 15px; font-weight: 700; line-height: 1.3; text-wrap: pretty; }
.fm-xcard__r { display: flex; align-items: center; gap: 8px; margin-top: auto; padding-top: 8px; font-family: var(--mono); font-size: 11px; color: var(--muted); }
.fm-xcard__r .fm-stars { font-size: 13px; letter-spacing: 1px; }
.fm-xcard__f { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: auto; }
.fm-xcard__r + .fm-xcard__f { margin-top: 0; }
.fm-xcard__p { font-family: var(--mono); font-size: 16px; font-weight: 700; }
.fm-xcard__b { cursor: pointer; border: 2px solid #1e1e1c; background: #fff; border-radius: 100px; padding: 8px 14px; font-family: var(--mono); font-size: 11px; font-weight: 700; letter-spacing: 0.06em; color: #1e1e1c; line-height: normal; }
.fm-pdp .fm-xcard__b:hover { background: #1e1e1c; color: #fff; }

/* Pasek zakupu przy przewijaniu (desktop) */
.fm-sticky { position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; background: #fff; border-top: 1px solid #d6d6d0; box-shadow: 0 -8px 30px rgba(30, 30, 28, 0.12); animation: fmUp 220ms ease-out; max-width: 100vw; overflow: hidden; }
.fm-sticky__in { max-width: var(--pw); margin: 0 auto; padding: 12px var(--pg); display: flex; align-items: center; gap: 12px 18px; flex-wrap: wrap; min-width: 0; }
.fm-sticky__in img { width: 48px; height: 48px; object-fit: contain; flex: none; }
.fm-sticky__c { display: flex; flex-direction: column; gap: 2px; min-width: 0; flex: 1 1 180px; }
.fm-sticky__n { font-size: 14px; font-weight: 700; line-height: 1.2; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.fm-sticky__pp { font-family: var(--mono); font-size: 12px; color: var(--muted); }
.fm-sticky__p { font-size: 20px; font-weight: 900; flex: none; }
.fm-sticky__b { cursor: pointer; flex: 1 1 200px; max-width: 100%; border: none; border-radius: 100px; background: #1e1e1c; color: #fff; padding: 15px 22px; font-size: 15px; font-weight: 700; transition: background 200ms; }
.fm-sticky__b:hover { background: var(--red); }

/* Produkty zmienne/grupowe: formularz Woo w stylu karty */
.fm-pactions__woo .variations { width: 100%; margin-bottom: 12px; }
.fm-pactions__woo .single_add_to_cart_button { min-height: 56px; border: none; border-radius: 100px; background: #1e1e1c; color: #fff; padding: 0 24px; font-size: 16px; font-weight: 700; cursor: pointer; }
