/* Wspolne: naglowek, sklep, produkt, blog, strona glowna
   Przeniesione 1:1 ze starego motywu Divi-child (global.css) – wyglad ma byc taki sam jak na starej stronie.
   Usuniete tylko reguly dla znacznikow Divi (et_pb, #et-, #main-content...) i import czcionek z Google
   (czcionki sa w motywie). Wygenerowane skryptem; poprawki do wygladu dopisuj w legacy-fixes.css. */

:root { --color-bg: #ffffff; --color-surface: #f7f1e9; --font-serif: Georgia, 'Times New Roman', serif; --color-border: #e8e2da; --color-text: #111114; --color-muted: #6b6560; --color-accent: #e5961a; --color-coral: #c0532b; --color-coral-bg: #fce9e2; --color-green: #1b6b3a; --color-green-bg: #e2f5eb; --font-heading: 'Figtree', sans-serif; --font-body: 'Cabin', sans-serif; --radius: 12px; --max-width: 1280px; }
body { font-family: var(--font-body); color: var(--color-text); background: var(--color-bg); }
.strefa-topbar { background: var(--color-surface); border-bottom: 1px solid var(--color-border); text-align: center; padding: 7px 16px; font-size: 12.5px; color: var(--color-text); letter-spacing: 0.01em; }
.strefa-topbar-star { color: var(--color-accent); margin-right: 4px; }
.strefa-topbar a { color: var(--color-text); font-weight: 700; text-decoration: underline; text-underline-offset: 2px; }
.woocommerce .ss-hero { background: #fff !important; border-bottom: none !important; }
.woocommerce-breadcrumb,
nav.woocommerce-breadcrumb { font-size: 12px !important; color: var(--color-muted) !important; padding: 12px 0 !important; margin: 0 !important; }
.woocommerce-breadcrumb a,
nav.woocommerce-breadcrumb a { color: var(--color-muted) !important; text-decoration: none !important; }
.woocommerce-breadcrumb a:hover { color: var(--color-coral) !important; }
.strefa-footer { background: #fff; border-top: 1px solid var(--color-border); padding: 56px 40px 28px; font-family: var(--font-body); }
.strefa-footer-grid { display: grid; grid-template-columns: 1.6fr 1fr 1fr 1fr 1.5fr; gap: 40px; max-width: 1180px; margin: 0 auto 44px; }
.strefa-footer-brand .footer-brand-name { font-family: var(--font-heading); font-size: 22px; font-weight: 800; letter-spacing: -0.03em; color: var(--color-text); margin: 0 0 2px; }
.strefa-footer-brand .footer-brand-by { font-size: 13px; color: var(--color-muted); margin: 0 0 16px; }
.strefa-footer-brand p { font-size: 14px; color: var(--color-muted); line-height: 1.65; margin: 0; max-width: 340px; }
.strefa-footer-col h4 { font-family: var(--font-heading); font-size: 12px; font-weight: 700; letter-spacing: 0.07em; text-transform: uppercase; color: var(--color-text); margin: 0 0 16px; }
.strefa-footer-col ul { list-style: none; margin: 0; padding: 0; }
.strefa-footer-col ul li { margin-bottom: 10px; }
.strefa-footer-col ul li a { font-size: 14px; color: var(--color-muted) !important; text-decoration: none !important; transition: color 0.15s; }
.strefa-footer-col ul li a:hover { color: var(--color-coral) !important; }
.strefa-footer-cta p { font-size: 14px; color: var(--color-muted); line-height: 1.6; margin: 0 0 16px; max-width: 280px; }
.footer-join-btn { display: inline-flex; align-items: center; padding: 12px 24px; background: var(--color-text); color: #fff !important; border-radius: 10px; font-size: 14px; font-weight: 700; text-decoration: none !important; transition: transform 0.15s; }
.footer-join-btn:hover { transform: translateY(-2px); }
@media (max-width: 860px) {
  .strefa-footer-grid { grid-template-columns: 1fr; gap: 36px; }
}
.strefa-shop { font-family: var(--font-body); color: var(--color-text); background: #fff; }
.strefa-shop .ss-inner { max-width: 1280px; margin: 0 auto; padding: 0 40px; }
.ss-hero { background: var(--color-surface); border-bottom: 1px solid var(--color-border); padding: 44px 0 40px; }
.ss-hero-inner { display: grid; grid-template-columns: 1fr 360px; gap: 48px; align-items: center; }
.ss-hero-text h1 { font-family: var(--font-heading) !important; font-size: 46px !important; font-weight: 600 !important; letter-spacing: -0.03em !important; line-height: 1.05 !important; color: var(--color-text) !important; margin: 0 0 12px !important; }
.ss-hero-text p { font-size: 15px; line-height: 1.6; color: var(--color-muted); margin: 0 0 22px; max-width: 480px; }
.ss-hero-features { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 26px; }
.ss-hero-features li { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--color-text); }
.ss-hero-features svg { width: 20px; height: 20px; color: var(--color-accent); flex-shrink: 0; }
.ss-hero-media { position: relative; }
.ss-hero-star { position: absolute; top: -10px; right: -8px; font-size: 22px; color: var(--color-coral); z-index: 2; }
.ss-layout { display: grid; grid-template-columns: 232px minmax(0, 1fr); gap: 32px; padding-top: 32px; padding-bottom: 48px; align-items: start; }
.strefa-shop-left { min-width: 0; position: sticky; top: 24px; }
.strefa-shop-main { min-width: 0; }
.ss-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-bottom: 18px; flex-wrap: wrap; }
.ss-toolbar .woocommerce-result-count { margin: 0; font-size: 13px; color: var(--color-muted); }
.ss-toolbar .woocommerce-ordering { margin: 0; }
.ss-toolbar .woocommerce-ordering select { padding: 9px 14px; border: 1px solid var(--color-border); border-radius: 8px; font-family: var(--font-body); font-size: 13px; background: #fff; color: var(--color-text); }
.strefa-shop-main ul.products { display: grid !important; grid-template-columns: repeat(4, 1fr) !important; gap: 18px !important; margin: 0 0 28px !important; padding: 0 !important; list-style: none !important; }
.strefa-shop-main ul.products::before,
.strefa-shop-main ul.products::after { content: none !important; display: none !important; }
.strefa-shop-main ul.products li.product { width: auto !important; margin: 0 !important; padding: 0 !important; float: none !important; clear: none !important; }
.strefa-shop-main li.product { position: relative; }
.strefa-shop-main li.product > a.woocommerce-LoopProduct-link,
.strefa-shop-main li.product > a.woocommerce-loop-product__link { display: block !important; width: 100% !important; }
.strefa-shop-main li.product .product-cat-badge { display: block; font-size: 10px; font-weight: 700; letter-spacing: 0.07em; text-transform: uppercase; color: var(--color-coral); margin-bottom: 5px; }
.strefa-shop-main li.product .woocommerce-loop-product__title { font-family: var(--font-heading) !important; font-size: 13px !important; font-weight: 600 !important; line-height: 1.4 !important; color: var(--color-text) !important; padding: 0 !important; margin: 0 0 6px !important; }
.strefa-shop-main li.product a { text-decoration: none !important; }
.strefa-shop-main li.product .price { display: block; font-size: 14px !important; font-weight: 700 !important; color: var(--color-text) !important; margin: 0 0 10px !important; }
.strefa-shop-main li.product .price del { font-weight: 500; color: var(--color-muted); opacity: 0.7; margin-right: 4px; }
.strefa-shop-main li.product .price ins { text-decoration: none; color: var(--color-text); }
.strefa-shop-main li.product .star-rating { display: none; }
.strefa-shop-main li.product .button,
.strefa-shop-main li.product .added_to_cart { display: inline-block; margin: 0 !important; padding: 9px 16px !important; background: var(--color-text) !important; color: #fff !important; border-radius: 8px !important; font-family: var(--font-body) !important; font-size: 13px !important; font-weight: 700 !important; text-transform: none !important; letter-spacing: 0 !important; }
.strefa-shop-main li.product .button:hover { background: #000 !important; }
.strefa-shop-main .woocommerce-pagination { margin-top: 8px; }
.strefa-shop-main .woocommerce-pagination ul { display: flex !important; gap: 6px; border: none !important; margin: 0 !important; padding: 0 !important; justify-content: flex-start; }
.strefa-shop-main .woocommerce-pagination ul li { border: none !important; margin: 0 !important; }
.strefa-shop-main .woocommerce-pagination ul li a,
.strefa-shop-main .woocommerce-pagination ul li span { display: inline-flex !important; align-items: center; justify-content: center; min-width: 38px; height: 38px; padding: 0 8px !important; border: 1px solid var(--color-border) !important; border-radius: 9px; font-size: 14px; font-weight: 600; color: var(--color-text) !important; background: #fff !important; }
.strefa-shop-main .woocommerce-pagination ul li span.current { background: var(--color-text) !important; border-color: var(--color-text) !important; color: #fff !important; }
.shop-trust-strip { display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px; max-width: 1280px; margin: 0 auto; padding: 30px 40px; border-top: 1px solid var(--color-border); }
.shop-trust-item { display: flex; gap: 12px; align-items: flex-start; }
.shop-trust-item svg { width: 26px; height: 26px; flex-shrink: 0; color: var(--color-coral); }
.shop-trust-item strong { display: block; font-family: var(--font-heading); font-size: 14px; font-weight: 700; color: var(--color-text); }
.shop-trust-item span { font-size: 12.5px; color: var(--color-muted); }
@media (max-width: 1100px) {
  .ss-layout { grid-template-columns: 220px minmax(0,1fr); }
}
@media (max-width: 860px) {
  .ss-hero-inner { grid-template-columns: 1fr; gap: 24px; }
  .ss-hero-media { max-width: 320px; }
  .ss-layout { grid-template-columns: 1fr; }
  .strefa-shop-left { display: none; }
  .strefa-shop-main ul.products { grid-template-columns: repeat(2, 1fr); }
  .shop-trust-strip { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 520px) {
  .strefa-shop .ss-inner { padding: 0 20px; }
  .strefa-shop-main ul.products { grid-template-columns: 1fr; }
  .shop-trust-strip { grid-template-columns: 1fr; }
}
.shop-promo-card { background: var(--color-surface); border-radius: 16px; margin-bottom: 24px; position: relative; overflow: hidden; display: grid; grid-template-columns: 1fr 240px; align-items: stretch; min-height: 210px; }
.shop-promo-card .promo-body { padding: 28px 32px; min-width: 0; }
.shop-promo-card h3 { font-family: var(--font-heading); font-size: 24px; font-weight: 800; letter-spacing: -0.03em; color: var(--color-text); margin: 0 0 12px; line-height: 1.15; }
.shop-promo-card p { font-size: 13px; color: var(--color-muted); margin: 0 0 14px; line-height: 1.45; max-width: 320px; }
.shop-promo-card ul { list-style: none; padding: 0; margin: 0 0 18px; }
.shop-promo-card ul li { font-size: 12.5px; color: var(--color-text); margin-bottom: 4px; padding-left: 22px; position: relative; }
.shop-promo-card ul li::before { content: '✓'; position: absolute; left: 0; color: var(--color-muted); font-weight: 600; }
.shop-promo-card .promo-actions { display: flex; align-items: center; gap: 20px; }
.shop-promo-card .promo-cta { display: inline-flex; align-items: center; padding: 12px 22px; background: var(--color-text); color: #fff !important; border-radius: 8px; font-size: 13.5px; font-weight: 700; text-decoration: none !important; transition: opacity 0.15s; }
.shop-promo-card .promo-cta:hover { opacity: 0.9; }
.shop-promo-card .promo-link { font-size: 13.5px; font-weight: 600; color: var(--color-text) !important; text-decoration: underline !important; text-underline-offset: 3px; }
.shop-promo-card .promo-media { position: relative; overflow: visible; background: #e9ddd0; border-radius: 80px 0 0 80px / 94px 0 0 94px; }
.shop-promo-card .promo-media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.shop-promo-card .promo-badge { position: absolute; top: 50%; left: -26px; transform: translateY(-50%); z-index: 2; width: 64px; height: 64px; border-radius: 50%; background: var(--color-coral); color: #fff; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; box-shadow: 0 4px 14px rgba(192,83,43,0.28); }
.shop-promo-card .promo-star { position: absolute; color: var(--color-accent); z-index: 3; pointer-events: none; line-height: 1; }
.shop-promo-card .promo-star--a { top: 22px; right: 300px; font-size: 15px; }
.shop-promo-card .promo-star--b { top: 64px; right: 244px; font-size: 22px; }
.shop-promo-card .promo-star--c { bottom: 38px; right: 296px; font-size: 12px; opacity: .8; }
.shop-promo-card .promo-badge em { font-style: normal; font-size: 9px; opacity: 0.85; }
.shop-promo-card .promo-badge strong { font-family: var(--font-heading); font-size: 15px; font-weight: 800; line-height: 1; margin: 1px 0; }
.shop-promo-card .promo-badge span { font-size: 8px; opacity: 0.85; }
.strefa-shop-left-sidebar { font-family: var(--font-body); }
.strefa-shop-left-sidebar .sidebar-section { padding-bottom: 20px; margin-bottom: 20px; border-bottom: 1px solid var(--color-border); }
.strefa-shop-left-sidebar .sidebar-section:last-child { border-bottom: none; }
.strefa-shop-left-sidebar .sidebar-title { font-size: 12px; font-weight: 700; letter-spacing: 0.07em; text-transform: uppercase; color: var(--color-muted); margin: 0 0 12px; }
.strefa-shop-left-sidebar .cat-list { list-style: none; padding: 0; margin: 0; }
.strefa-shop-left-sidebar .cat-list li { margin: 0; }
.strefa-shop-left-sidebar .cat-list li a { display: flex; align-items: center; justify-content: space-between; padding: 5px 0; font-size: 14px; color: var(--color-text) !important; text-decoration: none !important; transition: color 0.15s; }
.strefa-shop-left-sidebar .cat-list li a:hover { color: var(--color-coral) !important; }
.strefa-shop-left-sidebar .cat-list li.current-cat > a { color: var(--color-coral) !important; font-weight: 600; }
.strefa-shop-left-sidebar .cat-list .count { font-size: 12px; color: var(--color-muted); background: var(--color-surface); padding: 1px 6px; border-radius: 10px; flex-shrink: 0; }
.strefa-shop-left-sidebar .filter-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 6px; }
.strefa-shop-left-sidebar .filter-list label { display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--color-text); cursor: pointer; }
.strefa-shop-left-sidebar .filter-list input[type="checkbox"] { width: 15px; height: 15px; border: 1px solid var(--color-border); border-radius: 4px; accent-color: var(--color-coral); flex-shrink: 0; }
.strefa-shop-left-sidebar .filter-count { font-size: 12px; color: var(--color-muted); margin-left: auto; }
.strefa-shop-left-sidebar .price-range-row { display: flex; gap: 8px; margin-top: 10px; align-items: center; }
.strefa-shop-left-sidebar .price-range-row input { width: 72px; padding: 6px 8px; border: 1px solid var(--color-border); border-radius: 6px; font-size: 13px; text-align: center; font-family: var(--font-body); }
.strefa-shop-left-sidebar.strefa-fibo { border: 1px solid var(--color-border); border-radius: 16px; background: var(--color-bg); padding: 18px 20px 20px; }
.strefa-fibo .fibofilters-vertical-filters-container { font-family: var(--font-body); color: var(--color-text); }
.strefa-fibo .fibofilters-block { padding: 18px 0; border-bottom: 1px solid var(--color-border); }
.strefa-fibo .fibofilters-block:last-child { border-bottom: none; }
.strefa-fibo .fibofilters-block__headline { margin: 0; }
.strefa-fibo .fibofilters-block__headline-box { display: flex; align-items: center; justify-content: space-between; gap: 8px; cursor: pointer; }
.strefa-fibo .fibofilters-block__headline-box-inner { font-family: var(--font-heading); font-size: 14px; font-weight: 700; letter-spacing: 0.01em; color: var(--color-text); margin: 0; text-transform: none; }
.strefa-fibo .fibofilters-block__headline .fibofilters-collapser-container,
.strefa-fibo .fibofilters-block__headline .fibofilters-collapser { margin-left: auto; }
.strefa-fibo .fibofilters-block__headline-desc { display: none; }
.strefa-fibo .fibofilters-block__content { margin-top: 12px; }
.strefa-fibo .fibofilters-block__items-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 9px; }
.strefa-fibo .fibofilters-block__items-list .fibofilters-block__items-list { margin: 9px 0 0 16px; padding-left: 12px; border-left: 1px solid var(--color-border); }
.strefa-fibo .fibofilters-block__items-list--hidden { display: none; }
.strefa-fibo .fibofilters-item { margin: 0; }
.strefa-fibo .fibofilters-item__interactive { display: flex; align-items: center; gap: 9px; font-size: 14px; line-height: 1.3; color: var(--color-text) !important; text-decoration: none !important; cursor: pointer; text-transform: none; }
.strefa-fibo .fibofilters-collapser-container { display: flex; align-items: center; gap: 9px; width: 100%; }
.strefa-fibo .fibofilters-item__label { flex: 1 1 auto; min-width: 0; text-transform: none; }
.strefa-fibo .fibofilters-item__label span { text-transform: none; }
.strefa-fibo .fibofilters-item:hover .fibofilters-item__label { color: var(--color-coral); }
.strefa-fibo .fibofilters-item__control { flex: 0 0 auto; width: 17px; height: 17px; border: 1.5px solid var(--color-border); border-radius: 5px; background: #fff; display: inline-flex; align-items: center; justify-content: center; transition: border-color .15s, background .15s; color: #fff; }
.strefa-fibo .fibofilters-item__interactive:hover .fibofilters-item__control { border-color: var(--color-coral); }
.strefa-fibo .fibofilters-item__interactive[aria-checked="true"] .fibofilters-item__control { background: var(--color-coral); border-color: var(--color-coral); }
.strefa-fibo .fibofilters-item__control svg { width: 10px; height: 8px; }
.strefa-fibo .fibofilters-item__interactive[aria-checked="true"] .fibofilters-item__control svg { display: block !important; }
.strefa-fibo .fibofilters-item__counter { flex: 0 0 auto; margin-left: auto; font-size: 12px; color: var(--color-muted); background: var(--color-surface); padding: 1px 7px; border-radius: 10px; font-variant-numeric: tabular-nums; }
.strefa-fibo .fibofilters-item__counter::before { content: ""; }
.strefa-fibo .fibofilters-item.fibofilters-disabled { opacity: .4; pointer-events: none; }
.strefa-fibo .fibofilters-select-all-wrapper { display: none; }
.strefa-fibo .fibofilters-item--is-hierarchical .fibofilters-collapser .fibofilters-button { width: 18px; height: 18px; display: inline-flex; align-items: center; justify-content: center; border-radius: 4px; cursor: pointer; }
.strefa-fibo .fibofilters-item--is-hierarchical .fibofilters-collapser .fibofilters-button:hover { background: var(--color-surface); }
.strefa-fibo .fibofilters-range__inputs-wrapper { display: flex; align-items: flex-end; gap: 10px; margin-bottom: 14px; }
.strefa-fibo .fibofilters-input__wrapper { display: flex; flex-direction: column; gap: 3px; }
.strefa-fibo .fibofilters-input__label { font-size: 11px; color: var(--color-muted); }
.strefa-fibo .fibofilters-input__element { width: 80px; padding: 7px 9px; border: 1px solid var(--color-border); border-radius: 7px; font-size: 13px; font-family: var(--font-body); background: #fff; }
.strefa-fibo .fibofilters-input__element:focus { outline: none; border-color: var(--color-coral); }
.strefa-fibo .fibofilters-slider-histogram__item { background: var(--color-surface); }
.strefa-fibo .fibofilters-slider-histogram__item--active { background: #ead9c6; }
.strefa-fibo .fibofilters-range__track { height: 4px; background: var(--color-border); border-radius: 4px; }
.strefa-fibo .fibofilters-range__segment--active { background: var(--color-text); border-radius: 4px; }
.strefa-fibo .fibofilters-range__segment--inactive { background: transparent; }
.strefa-fibo .fibofilters-range__handle { width: 16px; height: 16px; background: #fff; border: 2px solid var(--color-text); border-radius: 50%; box-shadow: 0 1px 3px rgba(0,0,0,.18); cursor: grab; }
.strefa-fibo .fibofilters-range__handle:focus { outline: none; box-shadow: 0 0 0 4px var(--color-coral-bg); }
.strefa-fibo .fibofilters-range__label-wrapper { display: flex; justify-content: space-between; margin-top: 8px; font-size: 12px; color: var(--color-muted); }
.strefa-fibo .fibofilters-clear-filter-btn { cursor: pointer; opacity: .6; }
.strefa-fibo .fibofilters-clear-filter-btn--hidden { display: none; }
.strefa-fibo .sidebar-filters-header { align-items: flex-start; }
.strefa-fibo .fibofilters-applied-filters-container { display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; }
.strefa-fibo .fibofilters-show-more-less,
.strefa-fibo .fibofilters-block__show-more { margin-top: 10px; font-size: 12.5px; font-weight: 600; color: var(--color-coral); cursor: pointer; }
.strefa-shop-right-sidebar { display: flex; flex-direction: column; gap: 20px; font-family: var(--font-body); }
.strefa-shop-club-box { background: #fff; border: 1px solid var(--color-border); border-radius: var(--radius); overflow: hidden; box-shadow: 0 2px 12px rgba(0,0,0,0.06); }
.strefa-shop-club-box .club-body { padding: 20px 20px 18px; }
.strefa-shop-club-box .club-label { display: block; font-size: 10px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--color-muted); margin-bottom: 8px; }
.strefa-shop-club-box .club-heading { font-family: var(--font-heading); font-size: 18px; font-weight: 800; color: var(--color-text); margin: 0 0 6px; line-height: 1.2; }
.strefa-shop-club-box .club-sub { font-size: 13px; color: var(--color-muted); margin: 0 0 14px; line-height: 1.5; }
.strefa-shop-club-box .club-features { list-style: none; padding: 0; margin: 0 0 16px; display: flex; flex-direction: column; gap: 7px; }
.strefa-shop-club-box .club-features li { font-size: 13px; color: var(--color-muted); padding-left: 18px; position: relative; }
.strefa-shop-club-box .club-features li::before { content: '✓'; position: absolute; left: 0; color: var(--color-text); font-weight: 700; }
.strefa-shop-club-box .club-price { display: flex; align-items: baseline; gap: 3px; margin-bottom: 14px; }
.strefa-shop-club-box .club-price .club-from { font-size: 12px; color: var(--color-muted); margin-right: 2px; }
.strefa-shop-club-box .club-price strong { font-family: var(--font-heading); font-size: 22px; font-weight: 700; color: var(--color-text); }
.strefa-shop-club-box .club-price span { font-size: 13px; color: var(--color-muted); }
.strefa-shop-club-box .club-cta-row { display: flex; align-items: center; gap: 14px; margin-top: 2px; }
.strefa-shop-club-box .club-btn { display: inline-flex; align-items: center; padding: 10px 18px; background: var(--color-text); color: #fff !important; border-radius: 8px; font-size: 13px; font-weight: 700; text-decoration: none !important; transition: background 0.15s; white-space: nowrap; }
.strefa-shop-club-box .club-btn:hover { background: #333; }
.strefa-shop-club-box .club-learn-more { font-size: 13px; color: var(--color-muted) !important; text-decoration: underline !important; text-underline-offset: 2px; white-space: nowrap; }
.strefa-shop-monthly { background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius); overflow: hidden; }
.strefa-shop-monthly .monthly-label { padding: 12px 16px 0; font-size: 10px; font-weight: 700; letter-spacing: 0.07em; text-transform: uppercase; color: var(--color-muted); }
.strefa-shop-monthly h4 { font-size: 14px; font-weight: 700; padding: 6px 16px; margin: 0; color: var(--color-text); }
.strefa-shop-monthly img { width: 100%; aspect-ratio: 4/3; object-fit: cover; display: block; }
.strefa-shop-why { background: #fff; border: 1px solid var(--color-border); border-radius: var(--radius); padding: 18px 20px; }
.strefa-shop-why h4 { font-size: 13px; font-weight: 700; letter-spacing: 0.03em; color: var(--color-text); margin: 0 0 12px; }
.strefa-shop-why .why-stars { color: var(--color-accent); font-size: 13px; margin-bottom: 8px; }
.strefa-shop-why blockquote { font-size: 13px; color: var(--color-muted); font-style: italic; margin: 0 0 10px; padding: 0; border: none; line-height: 1.5; }
.strefa-shop-why .why-author { font-size: 12px; font-weight: 600; color: var(--color-text); }
.strefa-shop-chips { display: flex; flex-wrap: wrap; gap: 8px; padding: 16px 0 0; margin-bottom: 4px; }
.strefa-shop-chips a { display: inline-flex; align-items: center; padding: 6px 14px; border: 1px solid var(--color-border); border-radius: 20px; font-size: 13px; font-weight: 500; color: var(--color-text) !important; text-decoration: none !important; background: #fff; transition: all 0.15s; white-space: nowrap; }
.strefa-shop-chips a:hover,
.strefa-shop-chips a.active { background: var(--color-text); color: #fff !important; border-color: var(--color-text); }
.strefa-home { font-family: var(--font-body); color: var(--color-text); }
.strefa-home .sh-inner { max-width: 1180px; margin: 0 auto; padding: 0 40px; }
.strefa-home .sh-h2 { font-family: var(--font-heading); font-size: 30px; font-weight: 800; letter-spacing: -0.03em; line-height: 1.2; color: var(--color-text); margin: 0 0 10px; }
.strefa-home .sh-h2.sh-center { text-align: center; margin-bottom: 26px; }
.strefa-home .sh-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 13px 26px; border-radius: 10px; font-family: var(--font-body); font-size: 15px; font-weight: 700; text-decoration: none !important; transition: transform 0.15s, opacity 0.15s; cursor: pointer; }
.strefa-home .sh-btn:hover { transform: translateY(-2px); }
.strefa-home .sh-btn--dark { background: var(--color-text); color: #fff !important; }
.strefa-home .sh-btn--outline { background: transparent; color: var(--color-text); border: 1.5px solid var(--color-text); }
.strefa-home .sh-btn--block { width: 100%; }
.sh-hero { background: #fff; padding: 30px 0 14px; overflow: hidden; }
.sh-hero-inner { max-width: 1180px; margin: 0 auto; padding: 0 40px; display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center; }
.sh-eyebrow { order: 0; font-size: 12px; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--color-coral); margin: 0 0 18px; }
.sh-hero-text h1 { font-family: var(--font-heading); font-size: clamp(44px, 4.5vw, 58px); font-weight: 800; letter-spacing: -0.035em; line-height: 1.05; color: var(--color-text); margin: 0 0 14px; }
.sh-hero-sub { font-size: 17px; line-height: 1.65; color: var(--color-muted); max-width: 440px; margin: 0 0 30px; }
.sh-hero-cta { display: flex; gap: 14px; flex-wrap: wrap; }
.sh-hero-media { position: relative; min-height: 350px; display: flex; align-items: center; justify-content: center; }
.sh-hero-media img { position: relative; z-index: 2; width: 100%; max-width: 520px; height: auto; margin: 0 0 0 auto; display: block; object-fit: contain; border-radius: 0; }
.sh-blob { position: absolute; z-index: 1; }
.sh-blob--dark { width: 190px; height: 150px; background: var(--color-text); border-radius: 60% 40% 55% 45% / 55% 55% 45% 45%; top: 6px; left: -14px; }
.sh-blob--tan { width: 230px; height: 230px; background: var(--color-coral-bg, #f5e9df); border-radius: 48% 52% 60% 40% / 55% 45% 55% 45%; bottom: -28px; right: -34px; }
.sh-star { position: absolute; z-index: 3; color: var(--color-coral); font-size: 26px; line-height: 1; }
.sh-star--1 { top: 24px; right: 8px; font-size: 30px; }
.sh-star--2 { bottom: 60px; left: -2px; font-size: 20px; }
.sh-benefits { background: #fff; padding: 22px 0 26px; }
.sh-benefits .sh-h2 { text-align: center; margin-bottom: 24px; }
.sh-benefits-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; }
.sh-benefit { text-align: left; padding: 0 26px; border-right: 1px solid var(--color-border); }
.sh-benefit-ico { display: inline-block; width: 24px; height: 24px; color: var(--color-accent); margin: 0 8px -5px 0; vertical-align: baseline; }
.sh-benefit-ico svg { width: 100%; height: 100%; }
.sh-benefit h3 { font-family: var(--font-heading); font-size: 17px; font-weight: 700; color: var(--color-text); margin: 0 0 8px; }
.sh-benefit p { font-size: 14px; line-height: 1.6; color: var(--color-muted); margin: 0; }
.sh-pricing { background: #fff; padding: 40px 0; }
.sh-pricing-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; max-width: 1080px; margin: 0 auto; align-items: stretch; }
.sh-price-card { background: #fff; border: 1px solid var(--color-border); border-radius: 16px; padding: 20px 20px; text-align: center; position: relative; display: flex; flex-direction: column; }
.sh-price-card--featured { background: var(--color-coral-bg, #faf2ea); border-color: var(--color-coral); box-shadow: 0 18px 40px -22px rgba(0,0,0,0.25); }
.sh-price-badge { position: absolute; top: -13px; left: 50%; transform: translateX(-50%); background: var(--color-coral); color: #fff; font-size: 11px; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; padding: 5px 14px; border-radius: 20px; white-space: nowrap; }
.sh-price-plan { font-family: var(--font-heading); font-size: 17px; font-weight: 800; color: var(--color-text); margin-bottom: 2px; }
.sh-price-tag { font-size: 12px; color: var(--color-muted); margin: 0 0 8px; }
.sh-price-amount { margin-bottom: 1px; }
.sh-price-amount strong { font-family: var(--font-heading); font-size: 33px; font-weight: 800; letter-spacing: -0.03em; color: var(--color-text); line-height: 1; }
.sh-price-amount span { font-size: 14px; color: var(--color-muted); margin-left: 3px; }
.sh-price-billed { font-size: 12px; color: var(--color-muted); margin: 0 0 10px; }
.sh-price-list { list-style: none; padding: 12px 0 0; margin: 0 0 14px; border-top: 1px solid var(--color-border); display: flex; flex-direction: column; gap: 7px; text-align: left; }
.sh-price-card--featured .sh-price-list { border-top-color: rgba(0,0,0,0.12); }
.sh-price-list li { list-style: none; font-size: 13px; line-height: 1.3; color: var(--color-text); padding-left: 24px; position: relative; }
.sh-price-list li::marker { content: ''; }
.sh-price-list li::before { content: ''; position: absolute; left: 0; top: 1px; width: 17px; height: 17px; border-radius: 50%; background: var(--color-coral); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M5 12l4 4 10-10' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); background-size: 12px; background-repeat: no-repeat; background-position: center; }
.sh-pricing-note { text-align: center; font-size: 13px; color: var(--color-muted); margin: 20px 0 0; }
.sh-pricing-note .sh-note-ico { display: inline-flex; width: 16px; height: 16px; vertical-align: -3px; margin-right: 7px; color: var(--color-accent); }
.sh-pricing-note .sh-note-ico svg { width: 100%; height: 100%; }
.sh-how { background: #fff; padding: 26px 0 18px; }
.sh-how-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; padding-top: 14px; }
.sh-how-step { text-align: center; position: relative; background: var(--color-surface); border: 1px solid var(--color-border); border-radius: 14px; padding: 26px 18px 22px; }
.sh-how-num { position: absolute; top: -14px; left: 20px; display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 50%; background: var(--color-accent); color: #fff; font-family: var(--font-heading); font-size: 13px; font-weight: 800; margin-bottom: 0; box-shadow: 0 0 0 4px #fff; }
.sh-how-ico { display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; margin: 4px auto 14px; border-radius: 12px; background: transparent; border: none; color: var(--color-text); }
.sh-how-ico svg { width: 23px; height: 23px; }
.sh-how-step h3 { font-family: var(--font-heading); font-size: 16px; font-weight: 700; color: var(--color-text); margin: 0 0 8px; }
.sh-how-step p { font-size: 13px; line-height: 1.6; color: var(--color-muted); margin: 0; }
.sh-cats { background: #fff; padding: 18px 0 36px; }
.sh-cats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-bottom: 40px; }
.sh-cat { position: relative; display: block; height: 230px; border-radius: 12px; overflow: hidden; background-size: cover; background-position: center; text-decoration: none !important; }
.sh-cat::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,0.45), rgba(0,0,0,0) 55%); }
.sh-cat-label { position: absolute; left: 14px; bottom: 14px; right: auto; z-index: 2; background: rgba(22,22,28,0.82); border-radius: 10px; padding: 10px 14px; width: auto; display: inline-flex; flex-direction: column; gap: 2px; }
.sh-cat-label strong { font-family: var(--font-heading); font-size: 16px; font-weight: 700; color: #fff; }
.sh-cat-link { font-size: 12px; font-weight: 600; color: rgba(255,255,255,0.75); }
.sh-trust { display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px; background: var(--color-surface); border: 1px solid var(--color-border); border-radius: 18px; padding: 26px 30px; margin-top: 8px; }
.sh-trust-item { display: flex; gap: 14px; align-items: center; }
.sh-trust-ico { flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; border: 1.5px solid var(--color-accent); border-radius: 50%; color: var(--color-text); }
.sh-trust-ico svg { width: 22px; height: 22px; }
.sh-trust-item:nth-child(3) .sh-trust-ico svg path { fill: currentColor; }
.sh-trust-item strong { display: block; font-family: var(--font-heading); font-size: 14px; font-weight: 700; color: var(--color-text); margin-bottom: 3px; }
.sh-trust-item p { font-size: 13px; line-height: 1.5; color: var(--color-muted); margin: 0; }
.sh-testi { background: #fff; padding: 42px 0 24px; }
.sh-testi-card { display: grid; grid-template-columns: 300px 1fr; gap: 40px; align-items: center; background: var(--color-surface); border: 1px solid var(--color-border); border-radius: 20px; padding: 30px 40px; }
.sh-testi-media img { width: 100%; height: 262px; object-fit: cover; border-radius: 14px; display: block; }
.sh-testi-quote { font-family: var(--font-heading); font-size: 64px; font-weight: 800; line-height: 0.4; color: var(--color-coral); display: block; margin-bottom: 14px; }
.sh-testi-body blockquote { font-family: var(--font-heading); font-size: 20px; font-weight: 600; line-height: 1.45; letter-spacing: -0.01em; color: var(--color-text); margin: 0 0 16px; padding: 0; border: none; background: none; quotes: none; }
.sh-testi-body blockquote::before,
.sh-testi-body blockquote::after { content: none; }
.sh-testi-author { font-size: 14px; font-weight: 700; color: var(--color-muted); margin: 0 0 18px; }
.sh-testi-dots { display: flex; gap: 7px; }
.sh-testi-dots span { width: 8px; height: 8px; border-radius: 50%; background: var(--color-border); }
.sh-testi-dots span.is-active { background: var(--color-coral); width: 22px; border-radius: 4px; }
.sh-testi-slider { position: relative; overflow: hidden; }
.sh-testi-track { display: flex; width: 100%; transition: transform .5s cubic-bezier(.4, 0, .2, 1); will-change: transform; }
.sh-testi-slide { flex: 0 0 100%; box-sizing: border-box; }
.sh-testi-slider .sh-testi-dots { justify-content: center; margin-top: 22px; }
.sh-testi-dots button { width: 8px; height: 8px; padding: 0; border: none; border-radius: 50%; background: var(--color-border); cursor: pointer; transition: width .25s ease, background .25s ease; }
.sh-testi-dots button.is-active { background: var(--color-coral); width: 22px; border-radius: 4px; }
.sh-faq { background: #fff; padding: 20px 0 28px; }
.sh-faq-inner { max-width: 780px; }
.sh-faq-list { display: flex; flex-direction: column; }
.sh-faq-item { border: none; border-radius: 0; margin-bottom: 0; background: transparent; overflow: hidden; }
.sh-faq-item summary { font-family: var(--font-heading); font-size: 16px; font-weight: 700; color: var(--color-text); padding: 15px 52px 15px 0; cursor: pointer; position: relative; list-style: none; user-select: none; }
.sh-faq-item summary::-webkit-details-marker { display: none; }
.sh-faq-item summary::after { content: ''; position: absolute; right: 20px; top: 50%; width: 22px; height: 22px; transform: translateY(-50%); border-radius: 50%; background: var(--color-surface); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M12 5v14M5 12h14' stroke='%23222' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E"); background-size: 13px; background-repeat: no-repeat; background-position: center; transition: transform 0.2s; }
.sh-faq-item[open] summary::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M5 12h14' stroke='%23222' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E"); }
.sh-faq-body { padding: 0 22px 20px; }
.sh-faq-body p { font-size: 15px; line-height: 1.65; color: var(--color-muted); margin: 0; }
.sh-faq-all { display: block; text-align: center; margin-top: 20px; font-size: 14px; font-weight: 700; color: var(--color-coral) !important; text-decoration: none !important; }
@media (max-width: 980px) {
  .sh-hero-inner { grid-template-columns: 1fr; gap: 40px; }
  .sh-hero-text h1 { font-size: 48px; }
  .sh-hero-media { min-height: 360px; }
  .sh-hero-media img { height: 360px; }
  .sh-benefits-grid,
  .sh-pricing-grid,
  .sh-how-grid,
  .sh-cats-grid,
  .sh-trust { grid-template-columns: repeat(2, 1fr); }
  .sh-testi-card { grid-template-columns: 1fr; gap: 28px; }
}
@media (max-width: 560px) {
  .strefa-home .sh-inner,
  .sh-hero-inner { padding: 0 20px; }
  .sh-hero-text h1 { font-size: 38px; }
  .sh-benefits-grid,
  .sh-pricing-grid,
  .sh-how-grid,
  .sh-cats-grid,
  .sh-trust { grid-template-columns: 1fr; }
}
.sh-hero-media { min-height: auto !important; align-self: center !important; }
.sh-blob--dark,
.sh-blob--tan,
.sh-hero-media .sh-star { display: none !important; }
.sh-benefits .sh-h2 { margin-bottom: 22px !important; }
.sh-benefits .sh-h2::before { content: '✦'; color: var(--color-accent); margin-right: 10px; font-size: .85em; }
.sh-benefit:first-child { padding-left: 0 !important; }
.sh-benefit:last-child { border-right: none !important; padding-right: 0 !important; }
.sh-benefit h3 { display: inline !important; font-size: 15px !important; }
.sh-benefit p { margin-top: 12px !important; }
.sh-pricing { padding: 30px 0 !important; }
.sh-pricing .sh-h2 { margin-bottom: 22px !important; }
.sh-pricing .sh-h2::after { content: ' ✦'; color: var(--color-accent); font-size: .85em; }
.sh-price-card { padding: 22px 22px !important; }
.sh-price-card--featured { padding-top: 34px !important; }
.sh-price-amount strong { font-size: 36px !important; }
.sh-price-amount { margin: 6px 0 !important; }
.sh-price-plan { font-size: 18px !important; margin-bottom: 2px !important; }
.sh-price-card--featured .sh-price-plan { color: var(--color-coral) !important; }
.sh-price-list { margin: 14px 0 !important; }
.sh-price-list li { font-size: 13px !important; gap: 7px; margin-bottom: 8px !important; }
.sh-price-card .sh-btn { padding: 11px !important; }
.sh-how .sh-h2 { margin-bottom: 20px !important; }
.sh-how .sh-h2::after { content: ' ✦'; color: var(--color-accent); font-size: .85em; }
.sh-how-ico svg { width: 30px !important; height: 30px !important; }
.sh-cats .sh-h2 { margin-bottom: 18px !important; }
.sh-cat-label strong { font-size: 16px !important; }
.sh-trust { padding: 26px 30px !important; margin-top: 12px !important; }
.sh-testi-body { border-left: 3px solid var(--color-coral); padding-left: 28px; }
.sh-faq .sh-h2 { margin-bottom: 20px !important; }
.sh-faq .sh-h2::after { content: ' ✦'; color: var(--color-accent); font-size: .85em; }
@media (max-width: 980px) {
  .sh-hero { padding: 44px 0 52px !important; }
  .sh-benefits-grid { gap: 0 !important; }
  .sh-benefit { border-right: none !important; padding: 24px 0 !important; }
  .sh-testi-body { border-left: none !important; border-top: 3px solid var(--color-coral) !important; padding-left: 0 !important; padding-top: 20px !important; }
}
@media (max-width: 560px) {
  .sh-hero { padding: 36px 0 44px !important; }
}
.strefa-shop-subtitle { font-size: 15px; color: var(--color-muted); margin: 6px 0 0 !important; line-height: 1.55; }
.strefa-shop-trust { display: flex; flex-wrap: wrap; align-items: center; gap: 20px; margin: 12px 0 0 !important; padding: 10px 0 0 !important; border-top: 1px solid var(--color-border); }
.strefa-shop-trust span { font-size: 12px; font-weight: 600; color: var(--color-muted); display: flex; align-items: center; gap: 5px; white-space: nowrap; }
.strefa-shop-trust span em { font-style: normal; color: var(--color-text); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); border: 0; }
.strefa-product { font-family: var(--font-body); color: var(--color-text); background: #fff; }
.strefa-product .sp-inner { max-width: 1180px; margin: 0 auto; padding: 0 40px; }
.strefa-product .sp-h2 { font-family: var(--font-heading); font-size: 26px; font-weight: 800; letter-spacing: -0.03em; color: var(--color-text); margin: 0 0 24px; }
.sp-breadcrumb { padding: 18px 0 6px; }
.sp-breadcrumb .woocommerce-breadcrumb { font-size: 13px; color: var(--color-muted); }
.sp-breadcrumb .woocommerce-breadcrumb a { color: var(--color-muted); text-decoration: none; }
.sp-breadcrumb .woocommerce-breadcrumb a:hover { color: var(--color-coral); }
.sp-main { display: grid; grid-template-columns: 1fr 1fr; gap: 52px; padding: 20px 0 56px; align-items: start; }
.sp-gal-radio { position: absolute; opacity: 0; pointer-events: none; }
.sp-gallery-inner { display: flex; gap: 14px; align-items: flex-start; }
.sp-gallery-thumbs { display: flex; flex-direction: column; gap: 10px; width: 72px; flex-shrink: 0; }
.sp-gal-thumb { display: block; cursor: pointer; border-radius: 9px; overflow: hidden; border: 2px solid transparent; transition: border-color 0.15s, opacity 0.15s; opacity: 0.55; }
.sp-gal-thumb:hover { opacity: 1; }
.sp-gal-thumb img { display: block; width: 100%; height: 68px; object-fit: cover; }
.sp-gallery-main { flex: 1; min-width: 0; }
.sp-gal-slide { display: none; }
.sp-gal-slide img { width: 100%; height: 470px; object-fit: cover; border-radius: 14px; display: block; }
#sp-gal-0:checked ~ .sp-gallery-main .sp-gal-slide-0,
#sp-gal-1:checked ~ .sp-gallery-main .sp-gal-slide-1,
#sp-gal-2:checked ~ .sp-gallery-main .sp-gal-slide-2,
#sp-gal-3:checked ~ .sp-gallery-main .sp-gal-slide-3,
#sp-gal-4:checked ~ .sp-gallery-main .sp-gal-slide-4,
#sp-gal-5:checked ~ .sp-gallery-main .sp-gal-slide-5,
#sp-gal-6:checked ~ .sp-gallery-main .sp-gal-slide-6,
#sp-gal-7:checked ~ .sp-gallery-main .sp-gal-slide-7 { display: block; }
#sp-gal-0:checked ~ .sp-gallery-thumbs .sp-gal-thumb-0,
#sp-gal-1:checked ~ .sp-gallery-thumbs .sp-gal-thumb-1,
#sp-gal-2:checked ~ .sp-gallery-thumbs .sp-gal-thumb-2,
#sp-gal-3:checked ~ .sp-gallery-thumbs .sp-gal-thumb-3,
#sp-gal-4:checked ~ .sp-gallery-thumbs .sp-gal-thumb-4,
#sp-gal-5:checked ~ .sp-gallery-thumbs .sp-gal-thumb-5,
#sp-gal-6:checked ~ .sp-gallery-thumbs .sp-gal-thumb-6,
#sp-gal-7:checked ~ .sp-gallery-thumbs .sp-gal-thumb-7 { opacity: 1; border-color: var(--color-coral); }
.sp-summary { padding-top: 4px; }
.sp-cat-chip { display: inline-block; padding: 4px 12px; border-radius: 5px; font-size: 11px; font-weight: 700; letter-spacing: 0.07em; text-transform: uppercase; background: var(--color-coral-bg, #FFF0ED); color: var(--color-coral); margin-bottom: 14px; }
.sp-title { font-family: var(--font-heading) !important; font-size: 34px !important; font-weight: 800 !important; letter-spacing: -0.03em !important; line-height: 1.15 !important; color: var(--color-text) !important; margin: 0 0 12px !important; }
.sp-rating { display: flex; align-items: center; gap: 8px; margin-bottom: 16px; }
.sp-rating .sp-stars { color: var(--color-accent); font-size: 16px; letter-spacing: 1px; }
.sp-rating .sp-rating-num { font-size: 14px; font-weight: 700; color: var(--color-text); }
.sp-rating .sp-rating-count { font-size: 13px; color: var(--color-muted); }
.sp-price { display: flex; align-items: baseline; gap: 10px; margin-bottom: 22px; flex-wrap: wrap; }
.sp-price .price,
.sp-price .woocommerce-Price-amount { font-family: var(--font-heading); font-size: 30px; font-weight: 800; color: var(--color-text); }
.sp-price del,
.sp-price del .woocommerce-Price-amount { font-size: 19px; font-weight: 600; color: var(--color-muted); opacity: 0.7; }
.sp-price ins,
.sp-price ins .woocommerce-Price-amount { text-decoration: none; color: var(--color-text); }
.sp-price .sp-tax { font-size: 12px; font-weight: 500; color: var(--color-muted); }
.sp-price-members { font-family: var(--font-heading); font-size: 22px; font-weight: 800; color: var(--color-coral); }
.sp-buybox { margin-bottom: 14px; border: 1.5px solid var(--color-border); border-radius: 14px; overflow: hidden; }
.sp-buy-opt { display: flex; align-items: flex-start; gap: 13px; padding: 18px 20px; cursor: pointer; border-bottom: 1px solid var(--color-border); transition: background 0.15s; }
.sp-buybox .sp-buy-opt:last-child { border-bottom: none; }
.sp-buy-opt:has(.sp-buy-radio:checked) { background: var(--color-surface); }
.sp-buy-radio { position: absolute; opacity: 0; width: 0; height: 0; }
.sp-buy-mark { flex: 0 0 auto; width: 18px; height: 18px; margin-top: 3px; border-radius: 50%; border: 1.5px solid var(--color-border); background: #fff; position: relative; transition: border-color 0.15s; }
.sp-buy-radio:checked ~ .sp-buy-mark { border-color: var(--color-accent); }
.sp-buy-radio:checked ~ .sp-buy-mark::after { content: ''; position: absolute; inset: 3px; border-radius: 50%; background: var(--color-accent); }
.sp-buy-radio:focus-visible ~ .sp-buy-mark { box-shadow: 0 0 0 3px var(--color-coral-bg); }
.sp-buy-body { flex: 1 1 auto; min-width: 0; }
.sp-buy-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 4px; }
.sp-buy-name { font-family: var(--font-heading); font-size: 16px; font-weight: 800; color: var(--color-text); display: inline-flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.sp-buy-badge { background: var(--color-green, #3a8a4a); color: #fff; font-family: var(--font-body); font-size: 10px; font-weight: 800; letter-spacing: 0.05em; text-transform: uppercase; padding: 3px 9px; border-radius: 20px; }
.sp-buy-price { font-family: var(--font-heading); font-size: 21px; font-weight: 800; color: var(--color-text); white-space: nowrap; }
.sp-buy-price small { font-size: 12px; font-weight: 600; color: var(--color-muted); }
.sp-buy-price del,
.sp-buy-price del .woocommerce-Price-amount { font-size: 14px; font-weight: 600; color: var(--color-muted); }
.sp-buy-price ins,
.sp-buy-price ins .woocommerce-Price-amount { text-decoration: none; color: var(--color-text); }
.sp-buy-sub { display: block; font-size: 12.5px; color: var(--color-muted); line-height: 1.45; margin-bottom: 10px; }
.sp-buy-feat { list-style: none; margin: 8px 0 0; padding: 0; display: flex; flex-direction: column; gap: 7px; }
.sp-buy-feat li { list-style: none; font-size: 13px; line-height: 1.3; color: var(--color-muted); padding-left: 22px; position: relative; }
.sp-buy-feat li::before { content: '✓'; position: absolute; left: 0; top: 0; color: var(--color-green, #3a8a4a); font-size: 12px; font-weight: 700; }
.sp-buy-now { display: block; width: 100%; margin-bottom: 10px; padding: 15px 20px; background: var(--color-text); color: #fff !important; border: none; border-radius: 11px; font-family: var(--font-body); font-size: 15px; font-weight: 700; text-align: center; text-decoration: none !important; cursor: pointer; transition: background 0.15s, transform 0.15s; box-sizing: border-box; }
.sp-buy-now:hover { background: #000; transform: translateY(-1px); }
.sp-add-wishlist { display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; padding: 13px 20px; margin-bottom: 18px; border: 1.5px solid var(--color-border); border-radius: 11px; font-size: 14px; font-weight: 700; color: var(--color-text); background: #fff; cursor: pointer; transition: border-color 0.15s, background 0.15s; box-sizing: border-box; }
.sp-add-wishlist:hover { border-color: var(--color-text); background: var(--color-surface); }
.sp-add-wishlist a,
.sp-add-wishlist .commercekit-wishlist-icon { display: inline-flex; align-items: center; color: var(--color-text) !important; text-decoration: none !important; }
.sp-add-wishlist svg { width: 18px; height: 18px; }
.sp-add-wishlist .sp-wishlist-label { font-weight: 700; }
.sp-buy-trust { list-style: none; margin: 0 0 4px; padding: 16px 0 0; border-top: 1px solid var(--color-border); display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.sp-buy-trust li { list-style: none; display: flex; align-items: flex-start; gap: 9px; }
.sp-buy-trust-ico { flex: 0 0 auto; width: 22px; height: 22px; color: var(--color-muted); }
.sp-buy-trust-ico svg { width: 22px; height: 22px; }
.sp-buy-trust span:not(.sp-buy-trust-ico) { display: flex; flex-direction: column; font-size: 11.5px; line-height: 1.35; color: var(--color-muted); }
.sp-buy-trust strong { font-size: 12.5px; font-weight: 700; color: var(--color-text); }
@media (max-width: 480px) {
  .sp-buy-trust { grid-template-columns: 1fr; }
}
.sp-features { background: #fff; border-top: 1px solid var(--color-border); border-bottom: 1px solid var(--color-border); padding: 28px 0; }
.sp-features-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; }
.sp-feature { display: flex; gap: 12px; align-items: flex-start; padding: 0 28px; border-right: 1px solid var(--color-border); }
.sp-feature:first-child { padding-left: 0; }
.sp-feature:last-child { border-right: none; padding-right: 0; }
.sp-feature-ico { flex-shrink: 0; display: inline-flex; width: 26px; height: 26px; color: var(--color-coral); }
.sp-feature-ico svg { width: 100%; height: 100%; }
.sp-feature strong { display: block; font-family: var(--font-heading); font-size: 14px; font-weight: 700; color: var(--color-text); margin-bottom: 2px; }
.sp-feature p { font-size: 12.5px; color: var(--color-muted); margin: 0; line-height: 1.5; }
.sp-desc { padding: 48px 0; }
.sp-desc-grid { display: grid; grid-template-columns: 1fr 320px; gap: 44px; align-items: start; }
.sp-tabs input[type="radio"] { position: absolute; opacity: 0; pointer-events: none; }
.sp-tab-labels { display: flex; gap: 4px; border-bottom: 1px solid var(--color-border); margin-bottom: 22px; flex-wrap: wrap; }
.sp-tab-labels label { padding: 12px 18px; font-family: var(--font-heading); font-size: 14px; font-weight: 700; color: var(--color-muted); cursor: pointer; border-bottom: 2px solid transparent; margin-bottom: -1px; transition: color 0.15s; }
.sp-tab-labels label:hover { color: var(--color-text); }
.sp-tab-panel { display: none; }
.sp-tab-panel p { font-size: 15px; line-height: 1.7; color: var(--color-muted); margin: 0 0 14px; }
.sp-tab-panel ul,
.sp-tab-panel ol { font-size: 15px; line-height: 1.7; color: var(--color-muted); }
#sp-tab-desc:checked ~ .sp-tab-panels .sp-panel-desc,
#sp-tab-size:checked ~ .sp-tab-panels .sp-panel-size,
#sp-tab-fab:checked  ~ .sp-tab-panels .sp-panel-fab,
#sp-tab-faq:checked  ~ .sp-tab-panels .sp-panel-faq { display: block; }
#sp-tab-desc:checked ~ .sp-tab-labels label[for="sp-tab-desc"],
#sp-tab-size:checked ~ .sp-tab-labels label[for="sp-tab-size"],
#sp-tab-fab:checked  ~ .sp-tab-labels label[for="sp-tab-fab"],
#sp-tab-faq:checked  ~ .sp-tab-labels label[for="sp-tab-faq"] { color: var(--color-text); border-bottom-color: var(--color-coral); }
.sp-faq-item { border: 1px solid var(--color-border); border-radius: 10px; margin-bottom: 10px; padding: 0 16px; }
.sp-faq-item summary { font-family: var(--font-heading); font-size: 15px; font-weight: 700; color: var(--color-text); padding: 14px 0; cursor: pointer; list-style: none; }
.sp-faq-item summary::-webkit-details-marker { display: none; }
.sp-faq-item div { padding: 0 0 14px; }
.sp-faq-item p { margin: 0; font-size: 14px; }
.sp-after { background: var(--color-surface); border: 1px solid var(--color-border); border-radius: 16px; padding: 24px; }
.sp-after h3 { font-family: var(--font-heading); font-size: 16px; font-weight: 800; color: var(--color-text); margin: 0 0 16px; }
.sp-after ul { list-style: none; margin: 0 0 18px; padding: 0; display: flex; flex-direction: column; gap: 11px; }
.sp-after li { font-size: 13.5px; color: var(--color-text); display: flex; align-items: flex-start; gap: 9px; line-height: 1.45; }
.sp-after-ico { flex-shrink: 0; width: 18px; height: 18px; border-radius: 50%; background: var(--color-coral); color: #fff; font-size: 11px; display: inline-flex; align-items: center; justify-content: center; }
.sp-after-cta { display: inline-block; font-size: 13px; font-weight: 700; color: var(--color-coral) !important; text-decoration: none !important; }
.sp-related { padding: 12px 0 56px; }
.sp-related-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 20px; }
.sp-rel-card { display: block; text-decoration: none !important; }
.sp-rel-img { position: relative; border-radius: 12px; overflow: hidden; background: var(--color-surface); margin-bottom: 10px; }
.sp-rel-img img { width: 100%; height: 240px; object-fit: cover; display: block; transition: transform 0.3s ease; }
.sp-rel-card:hover .sp-rel-img img { transform: scale(1.04); }
.sp-rel-badge { position: absolute; top: 10px; left: 10px; background: var(--color-green, #2A8A50); color: #fff; font-size: 10px; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase; padding: 3px 9px; border-radius: 5px; }
.sp-rel-cat { display: block; font-size: 11px; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase; color: var(--color-coral); margin-bottom: 4px; }
.sp-rel-body h3 { font-family: var(--font-heading); font-size: 14px; font-weight: 700; line-height: 1.35; color: var(--color-text); margin: 0 0 6px; }
.sp-rel-card:hover .sp-rel-body h3 { color: var(--color-coral); }
.sp-rel-price .woocommerce-Price-amount { font-size: 14px; font-weight: 700; color: var(--color-text); }
.sp-rel-price del .woocommerce-Price-amount { font-size: 12px; font-weight: 500; color: var(--color-muted); }
.sp-rel-price ins { text-decoration: none; }
.sp-club-banner { background: linear-gradient(115deg, #f6ead9 0%, #f8f0e6 58%, #faf5ee 100%); border-radius: 16px; margin: 8px 0 40px; padding: 30px 0 30px 40px; overflow: hidden; }
.sp-club-banner-inner { display: grid; grid-template-columns: 0.8fr 1.5fr 0.72fr; align-items: center; gap: 30px; }
.sp-club-banner-text h2 { font-family: var(--font-heading); font-size: 30px; font-weight: 800; line-height: 1.08; letter-spacing: -0.03em; color: var(--color-text); margin: 0 0 10px; }
.sp-club-banner-text p { font-size: 14px; line-height: 1.5; color: var(--color-muted); margin: 0; }
.sp-club-form { display: flex; gap: 12px; margin-bottom: 16px; }
.sp-club-form input { flex: 1; min-width: 0; background: #fff; border: 1px solid var(--color-border); border-radius: 8px; padding: 13px 16px; font-size: 14px; color: var(--color-text); }
.sp-club-form input::placeholder { color: #9a948c; }
.sp-club-banner-btn { flex-shrink: 0; display: inline-flex; align-items: center; padding: 13px 26px; background: var(--color-text); color: #fff !important; border-radius: 8px; font-size: 14px; font-weight: 700; white-space: nowrap; text-decoration: none !important; transition: transform 0.15s; }
.sp-club-banner-btn:hover { transform: translateY(-2px); }
.sp-club-checks { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 24px; }
.sp-club-checks li { position: relative; padding-left: 22px; font-size: 13px; color: var(--color-muted); }
.sp-club-checks li::before { content: ''; position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 14px; height: 14px; background: var(--color-coral); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%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'%3E%3Cpath fill='white' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/contain no-repeat; }
.sp-club-banner-media { align-self: stretch; min-height: 160px; margin: -30px 0 -30px 0; }
.sp-club-banner-media img { width: 100%; height: 100%; object-fit: cover; border-radius: 90px 0 0 90px / 80px 0 0 80px; }
.sp-trust { background: #fff; border-top: 1px solid var(--color-border); padding: 36px 0; }
.sp-trust-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px; }
.sp-trust-item { display: flex; gap: 12px; align-items: flex-start; }
.sp-trust-ico { flex-shrink: 0; display: inline-flex; width: 26px; height: 26px; color: var(--color-coral); }
.sp-trust-ico svg { width: 100%; height: 100%; }
.sp-trust-item strong { display: block; font-family: var(--font-heading); font-size: 14px; font-weight: 700; color: var(--color-text); margin-bottom: 2px; }
.sp-trust-item p { font-size: 12.5px; color: var(--color-muted); margin: 0; line-height: 1.5; }
@media (max-width: 980px) {
  .sp-main { grid-template-columns: 1fr; gap: 32px; }
  .sp-desc-grid { grid-template-columns: 1fr; gap: 28px; }
  .sp-features-grid { grid-template-columns: repeat(2, 1fr); gap: 22px; }
  .sp-related-grid { grid-template-columns: repeat(3, 1fr); }
  .sp-trust-grid { grid-template-columns: repeat(2, 1fr); }
  .sp-club-banner { padding: 28px 24px; }
  .sp-club-banner-inner { grid-template-columns: 1fr; gap: 20px; }
  .sp-club-banner-media { display: none; }
}
@media (max-width: 560px) {
  .strefa-product .sp-inner { padding: 0 20px; }
  .sp-features-grid,
  .sp-related-grid,
  .sp-trust-grid { grid-template-columns: 1fr; }
  .sp-title { font-size: 27px !important; }
}
.strefa-blog { font-family: var(--font-body); color: var(--color-text); background: #fff; }
.strefa-blog .sb-inner { max-width: 1340px; margin: 0 auto; padding-left: 40px; padding-right: 40px; }
.sb-hero { background: #fff; border-bottom: none; padding: 40px 0 36px; }
.sb-hero-inner { display: grid; grid-template-columns: 1fr 520px; gap: 48px; align-items: center; }
.sb-hero-text h1 { font-family: var(--font-heading) !important; font-size: 46px !important; font-weight: 800 !important; letter-spacing: -0.04em !important; line-height: 1.08 !important; color: var(--color-text) !important; margin: 0 0 12px !important; }
.sb-hero-text p { font-size: 16px; line-height: 1.6; color: var(--color-muted); margin: 0; max-width: 460px; }
.sb-hero-media { position: relative; }
.sb-hero-media::before,
.sb-hero-media::after { content: ''; position: absolute; background: var(--color-surface); z-index: 0; }
.sb-hero-media::before { left: -56px; top: 8px; width: 200px; height: 150px; border-radius: 90px 110px 30px 120px / 100px 80px 110px 40px; }
.sb-hero-media::after { right: -30px; bottom: -18px; width: 230px; height: 130px; border-radius: 30px 120px 100px 110px / 110px 40px 90px 100px; }
.sb-hero-media img { position: relative; z-index: 1; width: 100%; height: 200px; object-fit: cover; border-radius: 100px 100px 100px 24px / 100px 24px 100px 100px; }
.sb-hero-star { position: absolute; z-index: 2; top: 38%; right: -30px; font-size: 30px; color: var(--color-accent); }
.sb-filter { border-bottom: none; padding: 16px 0 4px; }
.sb-filter-inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; }
.sb-chips { display: flex; flex-wrap: wrap; gap: 14px; }
.sb-chips a { display: inline-flex; align-items: center; padding: 8px 16px; border: 1px solid transparent; border-radius: 20px; font-size: 13px; font-weight: 600; color: var(--color-text) !important; text-decoration: none !important; background: var(--color-surface); transition: all 0.15s; }
.sb-chips a:hover { background: #f0e7da; color: var(--color-text) !important; }
.sb-chips a.is-active { background: var(--color-text); border-color: var(--color-text); color: #fff !important; }
.sb-search { position: relative; flex-shrink: 0; }
.sb-search input { width: 240px; padding: 9px 40px 9px 14px; border: 1px solid var(--color-border); border-radius: 22px; font-family: var(--font-body); font-size: 13px; background: #fff; box-sizing: border-box; }
.sb-search button { position: absolute; right: 6px; top: 50%; transform: translateY(-50%); width: 28px; height: 28px; border: none; background: none; color: var(--color-muted); cursor: pointer; display: flex; align-items: center; justify-content: center; }
.sb-search button svg { width: 16px; height: 16px; }
.sb-layout { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 44px; padding-top: 48px; padding-bottom: 56px; align-items: start; }
.sb-main { min-width: 0; }
.sb-card { display: flex; gap: 36px; padding: 15px 0; border-bottom: none; }
.sb-card:first-child { padding-top: 0; }
.sb-card-img { flex-shrink: 0; width: 390px; height: 232px; border-radius: 14px; overflow: hidden; display: block; }
.sb-card-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s ease; }
.sb-card-img:hover img { transform: scale(1.04); }
.sb-card-img-ph { display: block; width: 100%; height: 100%; background: var(--color-surface); }
.sb-card-body { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.sb-card-cat { display: inline-block; align-self: flex-start; font-size: 10px; font-weight: 700; letter-spacing: 0.09em; text-transform: uppercase; color: var(--color-coral) !important; text-decoration: none !important; background: #f5e0da; border-radius: 20px; padding: 3px 10px; margin-bottom: 10px; }
.sb-card-title { font-family: var(--font-heading) !important; font-size: 22px !important; font-weight: 700 !important; letter-spacing: -0.02em !important; line-height: 1.25 !important; margin: 0 0 10px !important; }
.sb-card-title a { color: var(--color-text) !important; text-decoration: none !important; }
.sb-card-title a:hover { color: var(--color-coral) !important; }
.sb-card-foot { margin-top: auto; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.sb-card-meta { display: flex; align-items: center; gap: 6px; font-size: 12px; color: var(--color-muted); min-width: 0; }
.sb-card-meta > span { white-space: nowrap; }
.sb-avatar { width: 26px; height: 26px; border-radius: 50%; }
.sb-card-author { font-weight: 600; color: var(--color-text); }
.sb-card-dot { color: var(--color-border); }
.sb-card-excerpt { font-size: 14px; line-height: 1.6; color: var(--color-muted); margin: 0 0 12px; }
.sb-card-more { flex-shrink: 0; display: inline-flex; align-items: center; gap: 6px; padding: 9px 18px; background: var(--color-surface); border: 1px solid var(--color-border); border-radius: 22px; font-size: 13px; font-weight: 600; color: var(--color-text) !important; text-decoration: none !important; transition: border-color 0.15s, gap 0.15s; }
.sb-card-more:hover { border-color: var(--color-text); gap: 9px; }
.sb-pagination { margin-top: 36px; }
.sb-pagination .wp-pagenavi,
.sb-pagination .nav-links { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; }
.sb-pagination a,
.sb-pagination span { display: inline-flex; align-items: center; justify-content: center; min-width: 38px; height: 38px; padding: 0 8px; border: 1px solid var(--color-border); border-radius: 9px; font-size: 14px; font-weight: 600; color: var(--color-text) !important; text-decoration: none !important; }
.sb-pagination a:hover { border-color: var(--color-text); }
.sb-pagination .current,
.sb-pagination [aria-current="page"] { background: var(--color-text); border-color: var(--color-text); color: #fff !important; }
.sb-pagination .pages { border: none; }
.sb-noposts { padding: 40px 0; }
.sb-noposts h2 { font-family: var(--font-heading); font-size: 24px; margin: 0 0 8px; }
.sb-noposts p { color: var(--color-muted); }
.sb-sidebar { display: flex; flex-direction: column; gap: 20px; position: sticky; top: 24px; }
.sb-widget { border: 1px solid var(--color-border); border-radius: 16px; padding: 22px; }
.sb-widget h3 { font-family: var(--font-heading); font-size: 17px; font-weight: 800; letter-spacing: -0.02em; color: var(--color-text); margin: 0 0 14px; }
.sb-widget--news { background: var(--color-surface); border-color: var(--color-border); position: relative; }
.sb-widget--news::after { content: '✳'; position: absolute; top: 18px; right: 20px; font-size: 22px; color: var(--color-accent); line-height: 1; pointer-events: none; }
.sb-widget--news h3 { font-family: var(--font-serif) !important; font-size: 20px !important; font-weight: 700 !important; letter-spacing: -0.01em !important; padding-right: 28px; margin-bottom: 8px !important; }
.sb-news-desc { font-size: 13px; color: var(--color-muted); line-height: 1.55; margin: 0 0 14px; }
.sb-news-feat { list-style: none; margin: 0 0 16px; padding: 0; display: flex; flex-direction: column; gap: 7px; }
.sb-news-feat li { list-style: none; font-size: 13px; color: var(--color-muted); padding-left: 18px; position: relative; }
.sb-news-feat li::before { content: '✓'; position: absolute; left: 0; top: 0; color: var(--color-accent); font-size: 12px; font-weight: 600; background: none; width: auto; height: auto; border-radius: 0; }
.sb-news-btn { display: block; text-align: center; padding: 11px 16px; background: var(--color-text); color: #fff !important; border-radius: 9px; font-size: 14px; font-weight: 700; text-decoration: none !important; transition: background 0.15s; }
.sb-news-btn:hover { background: #333; }
.sb-widget--popular { border: none; padding: 6px 4px; }
.sb-popular { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px; }
.sb-popular-item { display: flex; gap: 12px; align-items: center; text-decoration: none !important; }
.sb-popular-thumb { flex-shrink: 0; width: 68px; height: 50px; border-radius: 9px; overflow: hidden; background: var(--color-surface); display: block; }
.sb-popular-thumb img { width: 100%; height: 100%; object-fit: cover; }
.sb-popular-title { display: block; font-family: var(--font-heading); font-size: 13.5px; font-weight: 700; line-height: 1.35; color: var(--color-text); }
.sb-popular-item:hover .sb-popular-title { color: var(--color-coral); }
.sb-popular-date { display: block; font-size: 11.5px; color: var(--color-muted); margin-top: 3px; }
.sb-widget--promo { background: linear-gradient(135deg, #f6ead9 0%, #f8f0e6 60%, #faf5ee 100%); display: flex; align-items: flex-end; gap: 0; overflow: hidden; padding: 0 !important; }
.sb-promo-body { flex: 1 1 auto; padding: 20px 16px 20px 20px; min-width: 0; }
.sb-widget--promo h3 { color: var(--color-text); font-size: 20px; font-weight: 800; line-height: 1.2; margin: 0 0 8px; }
.sb-widget--promo p { font-size: 12px; line-height: 1.55; color: var(--color-muted); margin: 0 0 12px; }
.sb-promo-link { font-size: 13px; font-weight: 700; color: var(--color-coral) !important; text-decoration: none !important; }
.sb-promo-img { flex: 0 0 100px; width: 100px; height: 140px; object-fit: cover; object-position: top center; display: block; }
.sb-trust { background: #fff; border-top: none; padding: 8px 0 44px; }
.sb-trust-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px; background: var(--color-surface); border-radius: 18px; padding-top: 26px; padding-bottom: 26px; }
.sb-trust-item { display: flex; gap: 14px; align-items: center; }
.sb-trust-ico { flex-shrink: 0; width: 44px; height: 44px; border: 1px solid var(--color-accent); border-radius: 50%; background: #fff; color: var(--color-text); display: flex; align-items: center; justify-content: center; }
.sb-trust-ico svg { width: 20px; height: 20px; }
.sb-trust-item strong { display: block; font-family: var(--font-heading); font-size: 14px; font-weight: 700; color: var(--color-text); margin-bottom: 2px; }
.sb-trust-item p { font-size: 12.5px; color: var(--color-muted); margin: 0; line-height: 1.5; }
.sb-crumb { padding: 20px 0 4px; font-size: 13px; color: var(--color-muted); }
.sb-crumb a { color: var(--color-muted); text-decoration: none; }
.sb-crumb a:hover { color: var(--color-coral); }
.sb-crumb-sep { margin: 0 6px; color: var(--color-border); }
.sb-crumb-current { color: var(--color-text); }
.sb-single-layout { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 48px; padding-top: 24px; padding-bottom: 56px; align-items: start; }
.sb-article { min-width: 0; }
.sb-article-header { display: grid; grid-template-columns: 1fr 340px; gap: 36px; align-items: center; margin-bottom: 32px; }
.sb-article-header--noimg { grid-template-columns: 1fr; }
.sb-article-header-text { min-width: 0; }
.sb-article-title { font-family: var(--font-heading) !important; font-size: 36px !important; font-weight: 800 !important; letter-spacing: -0.035em !important; line-height: 1.15 !important; color: var(--color-text) !important; margin: 6px 0 14px !important; }
.sb-article-intro { font-size: 16px; line-height: 1.6; color: var(--color-muted); margin: 0 0 18px; }
.sb-article-meta { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--color-muted); margin-bottom: 0; }
.sb-article-meta .sb-avatar { width: 34px; height: 34px; }
.sb-article-author { font-weight: 700; color: var(--color-text); }
.sb-article-header-img { border-radius: 16px; overflow: hidden; }
.sb-article-header-img img { width: 100%; height: 290px; object-fit: cover; display: block; }
.sb-article-content { font-size: 16px; line-height: 1.75; color: #3a3a44; counter-reset: sb-h2; }
.sb-article-content > * { margin: 0 0 18px; }
.sb-article-content h2 { font-family: var(--font-heading); font-size: 25px; font-weight: 800; letter-spacing: -0.02em; color: var(--color-text); margin: 34px 0 14px; counter-increment: sb-h2; }
.sb-article-content h2::before { content: counter(sb-h2) ". "; }
.sb-article-content h3 { font-family: var(--font-heading); font-size: 19px; font-weight: 700; color: var(--color-text); margin: 26px 0 10px; }
.sb-article-content a { color: var(--color-coral); }
.sb-article-content ul,
.sb-article-content ol { padding-left: 22px; }
.sb-article-content li { margin-bottom: 7px; }
.sb-article-content img { border-radius: 12px; height: auto; }
.sb-article-content blockquote { margin: 24px 0; padding: 16px 22px; background: var(--color-surface); border-left: 3px solid var(--color-coral); border-radius: 0 10px 10px 0; font-style: italic; color: var(--color-text); }
.sb-share { display: flex; align-items: center; gap: 14px; padding: 8px 0; margin: 32px 0 28px; }
.sb-share-label { font-family: var(--font-heading); font-size: 14px; font-weight: 700; color: var(--color-text); }
.sb-share-links { display: flex; gap: 8px; }
.sb-share-links a { width: 36px; height: 36px; border-radius: 50%; border: 1px solid var(--color-border); display: flex; align-items: center; justify-content: center; color: var(--color-muted); transition: all 0.15s; }
.sb-share-links a:hover { background: var(--color-coral); border-color: var(--color-coral); color: #fff; }
.sb-share-links svg { width: 16px; height: 16px; }
.sb-postnav { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.sb-postnav-link { text-decoration: none !important; }
.sb-postnav-link:hover .sb-postnav-title { color: var(--color-coral); }
.sb-postnav-next { text-align: right; }
.sb-postnav-dir { display: block; font-size: 13px; font-weight: 600; color: var(--color-muted); margin-bottom: 6px; }
.sb-postnav-title { display: block; font-size: 14px; font-weight: 600; color: var(--color-text); line-height: 1.35; transition: color 0.15s; }
@media (max-width: 980px) {
  .sb-hero-inner { grid-template-columns: 1fr; gap: 28px; }
  .sb-hero-media { max-width: 360px; }
  .sb-layout,
  .sb-single-layout { grid-template-columns: 1fr; gap: 36px; }
  .sb-sidebar { position: static; }
  .sb-trust-grid { grid-template-columns: repeat(2, 1fr); }
  .sb-article-header { grid-template-columns: 1fr; gap: 22px; }
  .sb-article-header-img img { height: 240px; }
}
@media (max-width: 620px) {
  .strefa-blog .sb-inner { padding-left: 20px; padding-right: 20px; }
  .sb-card { flex-direction: column; gap: 14px; }
  .sb-card-img { width: 100%; height: 200px; }
  .sb-hero-text h1 { font-size: 34px !important; }
  .sb-article-title { font-size: 28px !important; }
  .sb-trust-grid { grid-template-columns: 1fr; }
  .sb-postnav { grid-template-columns: 1fr; }
}
.strefa-shop .ss-hero-text h1,
.sp-title,
.sb-hero-text h1,
.sb-card-title,
.sb-card-title a,
.sb-article-title,
.sb-sidebar .sb-widget h3 { font-family: var(--font-serif) !important; font-weight: 700 !important; letter-spacing: -0.01em !important; }
.sh-pricing .sh-price-card--featured { border-color: var(--color-accent) !important; }
.sh-pricing .sh-price-badge { background: var(--color-accent) !important; color: #fff !important; }
.sh-pricing .sh-price-card--featured .sh-price-plan { color: var(--color-accent) !important; }
.sh-pricing .sh-price-card--featured { background: #f8f0e8 !important; }
.sh-pricing .sh-price-list li::before { background: none !important; background-color: transparent !important; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M4 12l5 5L20 6' stroke='%23444048' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important; background-repeat: no-repeat !important; background-position: center !important; background-size: 14px !important; border-radius: 0 !important; width: 16px !important; height: 16px !important; }
.strefa-shop-main li.product .onsale,
.strefa-shop-main li.product .product-new-badge { position: absolute !important; top: 10px !important; left: 10px !important; z-index: 10 !important; background: #fff !important; color: var(--color-text) !important; font-size: 10px !important; font-weight: 800 !important; letter-spacing: 0.07em !important; text-transform: uppercase !important; padding: 4px 10px !important; border-radius: 20px !important; min-height: auto !important; line-height: 1.5 !important; }
.strefa-shop-main li.product .product-cat-badge { display: none !important; }
.strefa-shop-main li.product .wc-title-wrap { padding: 14px 14px 6px !important; }
.strefa-shop-main li.product .price { display: none !important; }
.card-info { padding: 2px 14px 16px; }
.card-sizes { display: block; font-size: 12px; color: var(--color-muted); margin-bottom: 7px; }
.card-club { display: block; font-size: 12px; font-weight: 600; color: var(--color-coral) !important; text-decoration: none !important; margin-bottom: 6px; }
.card-club:hover { text-decoration: underline !important; }
.card-price-once { display: block; font-size: 12px; color: var(--color-muted); }
.card-price-once .woocommerce-Price-amount { color: var(--color-text); font-weight: 600; }
.sidebar-filters-header { display: flex; align-items: center; justify-content: space-between; padding: 0 0 14px; margin-bottom: 4px; border-bottom: 1px solid var(--color-border); }
.sidebar-filters-title { display: flex; align-items: center; gap: 6px; font-family: var(--font-heading); font-size: 15px; font-weight: 700; color: var(--color-text); }
.sidebar-filters-title svg { width: 16px; height: 16px; flex-shrink: 0; color: var(--color-muted); }
.sidebar-clear-all { font-size: 12.5px; color: var(--color-muted) !important; text-decoration: none !important; font-weight: 500; transition: color 0.15s; }
.sidebar-clear-all:hover { color: var(--color-text) !important; }
.sidebar-apply-btn { display: block; width: 100%; margin-top: 20px; padding: 12px; background: var(--color-text); color: #fff; border: none; border-radius: 9px; font-family: var(--font-body); font-size: 14px; font-weight: 700; cursor: pointer; transition: opacity 0.15s; }
.sidebar-apply-btn:hover { opacity: 0.88; }
.footer-socials { display: flex; gap: 14px; margin-top: 18px; }
.footer-socials a { color: var(--color-muted) !important; text-decoration: none !important; transition: color 0.15s; display: flex; align-items: center; }
.footer-socials a:hover { color: var(--color-text) !important; }
.strefa-footer-newsletter p { font-size: 13.5px; color: var(--color-muted); line-height: 1.55; margin: 0 0 14px; }
.footer-newsletter-form { display: flex; flex-direction: column; gap: 10px; }
.footer-newsletter-form input[type="email"] { width: 100%; padding: 10px 14px; border: 1px solid var(--color-border); border-radius: 8px; font-family: var(--font-body); font-size: 13.5px; outline: none; box-sizing: border-box; }
.footer-newsletter-form button { padding: 11px 20px; background: var(--color-text); color: #fff; border: none; border-radius: 8px; font-family: var(--font-body); font-size: 13.5px; font-weight: 700; cursor: pointer; transition: opacity 0.15s; }
.footer-newsletter-form button:hover { opacity: 0.88; }
.strefa-footer-bottom { display: flex; align-items: center; justify-content: space-between; max-width: 1180px; margin: 0 auto; padding-top: 20px; border-top: 1px solid var(--color-border); font-size: 13px; color: var(--color-muted); }
.footer-bottom-links { display: flex; gap: 20px; }
.footer-bottom-links a { font-size: 13px; color: var(--color-muted) !important; text-decoration: none !important; }
.footer-bottom-links a:hover { color: var(--color-text) !important; }
@media (max-width: 1024px) {
  .strefa-footer-grid { grid-template-columns: 1fr 1fr 1fr; gap: 28px; }
}
@media (max-width: 640px) {
  .strefa-footer-grid { grid-template-columns: 1fr 1fr; gap: 24px; }
  .strefa-footer-brand { grid-column: 1 / -1; }
  .strefa-footer-newsletter { grid-column: 1 / -1; }
}
