/**
 * Jabłonowscy Premium 4.2
 * Ostatnia warstwa stylistyczna: jasne płótno, głęboki brąz i czarne okucia.
 */

:root {
  --jk42-ink: #1b100b;
  --jk42-coffee: #321b11;
  --jk42-walnut: #54301e;
  --jk42-copper: #9a6339;
  --jk42-gold: #c69559;
  --jk42-sand: #ead8bc;
  --jk42-paper: #fbf6ed;
  --jk42-ivory: #f4eadb;
  --jk42-line: rgba(67, 38, 23, .18);
  --jk42-shadow: 0 24px 64px rgba(45, 25, 15, .13);
  --jk42-ease: cubic-bezier(.22, 1, .36, 1);
}

.jkct-premium-v42 {
  color: var(--jk42-ink);
  background: var(--jk42-paper);
}

.jkct-premium-v42 :where(.jkct-home-hero, .jkct-coffees-section, .jkct-origin-section, .jkct-compass-anchor, .jkct-about-section, .jkct-blog-section, .jkct-faq-section, .jkct-info-content, .jpld1-info-section) {
  position: relative;
  isolation: isolate;
}

.jkct-premium-v42 :where(.jkct-coffees-section, .jkct-origin-section, .jkct-about-section, .jkct-blog-section, .jkct-faq-section)::after {
  content: '';
  position: absolute;
  z-index: -1;
  width: 92px;
  height: 92px;
  pointer-events: none;
  opacity: .12;
  background-image: url('../premium/premium-icons.webp');
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 400% 300%;
  filter: sepia(1) saturate(.7);
}
.jkct-premium-v42 .jkct-coffees-section::after { top: 7%; right: 3%; transform: rotate(17deg); }
.jkct-premium-v42 .jkct-origin-section::after { right: 4%; bottom: 8%; transform: rotate(-24deg); }
.jkct-premium-v42 .jkct-about-section::after { top: 9%; left: 3%; transform: rotate(28deg); }
.jkct-premium-v42 .jkct-blog-section::after { right: 4%; bottom: 5%; transform: rotate(-10deg); }
.jkct-premium-v42 .jkct-faq-section::after { top: 8%; left: 4%; transform: rotate(15deg); }

/* Przyciski: stała szerokość treści i żadnej strzałki Divi nad tekstem. */
.jkct-premium-v42 :where(.et_pb_button, .jkct-button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button) {
  display: inline-flex !important;
  min-height: 52px;
  padding: 14px 25px !important;
  align-items: center;
  justify-content: center;
  gap: 14px;
  overflow: hidden;
  border-radius: 4px 17px !important;
  letter-spacing: .07em !important;
  line-height: 1.2 !important;
  text-align: center;
  transition: transform .36s var(--jk42-ease), color .28s ease, background-color .28s ease, border-color .28s ease, box-shadow .36s ease !important;
}
.jkct-premium-v42 :where(.et_pb_button, .jkct-button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button)::after {
  display: none !important;
  content: none !important;
}
.jkct-premium-v42 :where(.et_pb_button, .jkct-button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button):hover {
  padding: 14px 25px !important;
  transform: translateY(-4px);
  box-shadow: 0 17px 32px rgba(51, 28, 16, .23) !important;
}
.jkct-premium-v42 :where(.et_pb_button, .jkct-button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button):focus-visible {
  outline: 3px solid rgba(198, 149, 89, .46) !important;
  outline-offset: 4px;
}

/* Pasek kontaktowy u góry. */
.jkct-premium-v42 .jkh1-utility {
  min-height: 78px !important;
  border-top: 4px solid var(--jk42-gold);
}
.jkct-premium-v42 .jkh1-utility > .et_pb_row {
  min-height: 74px !important;
  grid-template-columns: minmax(270px, .85fr) minmax(340px, 1fr) minmax(590px, 1.6fr) !important;
  gap: 28px !important;
}
.jkct-premium-v42 .jkh1-utility .jkh1-utility-button {
  min-height: 74px;
  padding: 8px 13px;
  gap: 11px;
  border-radius: 0;
  font-size: 12px;
}
.jkct-premium-v42 .jkh1-utility .jkh1-utility-button:hover {
  background: rgba(255, 255, 255, .075);
  transform: none;
}
.jkct-premium-v42 .jkh1-utility-button .jkct-premium-icon {
  width: 54px !important;
  height: 54px !important;
  flex: 0 0 54px;
  filter: drop-shadow(0 8px 13px rgba(0, 0, 0, .38));
}
.jkct-premium-v42 .jkh1-utility-button span {
  font-size: 11px;
  line-height: 1.35;
}
.jkct-premium-v42 .jkh1-utility-button small { font-size: 9px; }
.jkct-premium-v42 .jkh1-claim { font-size: 12px; letter-spacing: .15em; }
.jkct-premium-v42 .jkh1-social-cluster { height: 74px; gap: 5px; }

/* Główne menu. */
.jkct-premium-v42 .jkh1-main > .et_pb_row {
  min-height: 156px !important;
  grid-template-columns: minmax(280px, 330px) minmax(620px, 1fr) minmax(360px, 390px) !important;
  gap: 24px !important;
}
.jkct-premium-v42 .jkh1-logo-panel,
.jkct-premium-v42 .jkh1-native-nav,
.jkct-premium-v42 .jkh1-native-actions { min-height: 156px !important; }
.jkct-premium-v42 .jkh1-logo {
  min-height: 134px;
  padding: 17px 25px 13px;
  background: linear-gradient(145deg, #21120c, #452719) !important;
  border: 1px solid rgba(185, 132, 77, .62) !important;
  border-radius: 5px 22px !important;
  box-shadow: 0 23px 45px rgba(46, 26, 16, .22) !important;
}
.jkct-premium-v42 .jkh1-logo img { width: min(250px, 95%) !important; max-height: 92px !important; }
.jkct-premium-v42 .jkh1-logo small { margin-top: 4px; color: #dcc39f; font-size: 8px; }
.jkct-premium-v42 .jkh1-logo:hover { transform: translateY(-5px) scale(1.015); box-shadow: 0 30px 58px rgba(44, 24, 14, .30) !important; }

.jkct-premium-v42 .jkh1-native-nav nav { height: 156px; gap: 8px !important; }
.jkct-premium-v42 .jkh1-nav-link {
  min-height: 156px;
  padding: 0 14px !important;
  justify-content: center;
  color: var(--jk42-ink) !important;
  font-size: 13px !important;
  letter-spacing: .11em !important;
  white-space: nowrap;
}
.jkct-premium-v42 .jkh1-nav-link::before { right: 50% !important; bottom: 27px !important; left: 50% !important; height: 2px !important; background: var(--jk42-copper) !important; transition: right .36s var(--jk42-ease), left .36s var(--jk42-ease) !important; }
.jkct-premium-v42 .jkh1-nav-link::after { content: '◆' !important; bottom: 14px !important; color: var(--jk42-gold) !important; font-size: 7px !important; transform: translateY(8px) rotate(45deg) !important; }
.jkct-premium-v42 .jkh1-nav-link:hover,
.jkct-premium-v42 .jkh1-nav-link:focus-visible,
.jkct-premium-v42 .jkh1-nav-link.is-current {
  color: #fff4e5 !important;
  background: linear-gradient(180deg, rgba(59, 32, 20, .96), rgba(34, 18, 12, .98)) !important;
  box-shadow: inset 0 0 0 1px rgba(193, 143, 84, .25);
}
.jkct-premium-v42 .jkh1-nav-link:hover::before,
.jkct-premium-v42 .jkh1-nav-link:focus-visible::before,
.jkct-premium-v42 .jkh1-nav-link.is-current::before { right: 17px !important; left: 17px !important; }
.jkct-premium-v42 .jkh1-nav-link:hover::after,
.jkct-premium-v42 .jkh1-nav-link:focus-visible::after,
.jkct-premium-v42 .jkh1-nav-link.is-current::after { opacity: 1 !important; transform: translateY(0) rotate(45deg) !important; }

.jkct-premium-v42 .jkh1-native-actions p { height: 156px; gap: 8px !important; }
.jkct-premium-v42 .jkh1-action {
  width: 118px !important;
  min-height: 132px !important;
  height: 132px;
  padding: 13px 8px 11px !important;
  justify-content: center;
  color: var(--jk42-ink) !important;
  background: rgba(255, 251, 244, .78) !important;
  border: 1px solid rgba(73, 40, 23, .17) !important;
  border-radius: 4px 18px !important;
}
.jkct-premium-v42 .jkh1-action .jkct-premium-icon { width: 54px !important; height: 54px !important; }
.jkct-premium-v42 .jkh1-action .jkct-action-label { max-width: 100px; font-size: 9px !important; line-height: 1.2; }
.jkct-premium-v42 .jkh1-action:hover {
  color: #fff1dc !important;
  background: linear-gradient(145deg, #24130d, #52301f) !important;
  border-color: rgba(198, 149, 89, .64) !important;
  transform: translateY(-6px) !important;
}
.jkct-premium-v42 .jkh1-action--cart > .jkct-cart-count { top: 4px !important; right: 4px !important; min-width: 28px; height: 28px; font-size: 11px; }

/* Pasek wysyłki + interaktywny wybór metody. */
.jkct-header-experience {
  color: #f7e8d3;
  background: linear-gradient(90deg, #170d09, #432719 52%, #1b100b);
  border-top: 1px solid rgba(219, 172, 105, .3);
  border-bottom: 1px solid rgba(219, 172, 105, .48);
  box-shadow: 0 14px 26px rgba(31, 16, 9, .18);
}
.jkct-header-experience__inner {
  display: grid;
  width: min(94%, 1540px);
  min-height: 78px;
  margin: auto;
  grid-template-columns: minmax(460px, 1fr) minmax(620px, 1.25fr);
  align-items: stretch;
}
.jkct-header-experience__delivery,
.jkct-header-experience__chooser { display: flex; min-width: 0; align-items: center; }
.jkct-header-experience__delivery { padding-right: 34px; gap: 16px; border-right: 1px solid rgba(232, 193, 135, .23); }
.jkct-header-experience__delivery > .jkct-premium-icon { width: 60px; height: 60px; flex: 0 0 60px; }
.jkct-header-experience__delivery > div { display: grid; width: 100%; grid-template-columns: 1fr auto; align-items: end; gap: 2px 18px; }
.jkct-header-experience__delivery strong { color: #fff1dc; font: 800 11px/1.25 Arial, sans-serif; letter-spacing: .07em; text-transform: uppercase; }
.jkct-header-experience__delivery small { color: rgba(243, 219, 187, .68); font: 10px/1.3 Arial, sans-serif; }
.jkct-header-experience__track { position: relative; grid-column: 1 / -1; height: 8px; margin-top: 7px; overflow: hidden; background: rgba(255, 255, 255, .12); border: 1px solid rgba(255, 255, 255, .08); border-radius: 99px; }
.jkct-header-experience__track i { display: block; width: 0; height: 100%; background: linear-gradient(90deg, #a76b3b, #e7bd80, #a9c782); border-radius: inherit; box-shadow: 0 0 16px rgba(221, 181, 121, .45); transition: width .55s var(--jk42-ease); }
.jkct-header-experience.is-qualified .jkct-header-experience__track i { background: linear-gradient(90deg, #6d9159, #c2d996); }
.jkct-header-experience__chooser { padding-left: 34px; gap: 15px; }
.jkct-header-experience__chooser > span { color: #e7cda8; font: 700 10px/1.2 Arial, sans-serif; letter-spacing: .09em; text-transform: uppercase; white-space: nowrap; }
.jkct-header-experience__chooser > div { display: flex; gap: 6px; }
.jkct-header-experience__chooser button { min-height: 36px; padding: 7px 12px; color: #f7e7d2; background: rgba(255, 255, 255, .045); border: 1px solid rgba(226, 181, 114, .28); border-radius: 3px 11px; font: 800 9px/1 Arial, sans-serif; letter-spacing: .06em; text-transform: uppercase; cursor: pointer; transition: transform .25s ease, background-color .25s ease, color .25s ease; }
.jkct-header-experience__chooser button:hover { transform: translateY(-2px); }
.jkct-header-experience__chooser button[aria-pressed='true'] { color: #22120c; background: linear-gradient(135deg, #f0d2a5, #c68c4f); border-color: transparent; }
.jkct-header-experience__chooser > small { flex: 1; color: rgba(244, 221, 191, .72); font-size: 10px; }
.jkct-header-experience__chooser > a { padding: 8px 12px; color: #fff0db !important; border-bottom: 1px solid var(--jk42-gold); font: 800 9px/1.2 Arial, sans-serif; letter-spacing: .07em; text-transform: uppercase; white-space: nowrap; }

/* Hero z trzema niezależnymi modułami-slajdami Divi. */
.jkct-premium-v42 .jkct-home-hero { padding: clamp(70px, 7vw, 112px) 0 !important; }
.jkct-premium-v42 .jkct-hero-row { display: grid !important; grid-template-columns: minmax(420px, .82fr) minmax(620px, 1.28fr) !important; align-items: center !important; gap: clamp(42px, 5vw, 84px) !important; }
.jkct-premium-v42 .jkct-hero-row > .et_pb_column { float: none !important; width: 100% !important; margin: 0 !important; }
.jkct-premium-v42 .jkct-hero-copy { padding: clamp(34px, 4vw, 62px) !important; background: rgba(253, 248, 240, .92); border: 1px solid var(--jk42-line); border-radius: 6px 32px; box-shadow: var(--jk42-shadow); }
.jkct-premium-v42 .jkct-hero-copy h1 { font-size: clamp(54px, 5.4vw, 88px) !important; line-height: .98 !important; }
.jkct-premium-v42 .jkct-hero-copy .jkct-lead { max-width: 680px; font-size: 17px; line-height: 1.7; }
.jkct-premium-v42 .jkct-hero-slider {
  position: relative;
  min-height: clamp(520px, 39vw, 670px) !important;
  overflow: hidden;
  background: var(--jk42-coffee);
  border: 13px solid #351e13;
  border-radius: 7px 38px;
  box-shadow: 0 36px 84px rgba(42, 23, 14, .30);
  isolation: isolate;
}
.jkct-premium-v42 .jkct-hero-slider > .et_pb_module { margin: 0 !important; }
.jkct-premium-v42 .jkct-hero-slide { position: absolute !important; z-index: 0; inset: 0; opacity: 0; pointer-events: none; transition: opacity 1s ease; }
.jkct-premium-v42 .jkct-hero-slide.is-active { z-index: 1; opacity: 1; pointer-events: auto; }
.jkct-premium-v42 .jkct-hero-slide .et_pb_text_inner,
.jkct-premium-v42 .jkct-hero-slide p { height: 100%; }
.jkct-premium-v42 .jkct-hero-slide img { display: block; width: 100%; height: 100%; min-height: clamp(520px, 39vw, 670px); object-fit: cover; object-position: center; transform: scale(1.04); }
.jkct-premium-v42 .jkct-hero-slide.is-active img { animation: jk42-hero-kenburns 7.2s linear both; }
.jkct-premium-v42 .jkct-hero-slider::after { content: ''; position: absolute; z-index: 2; inset: 0; pointer-events: none; background: linear-gradient(180deg, rgba(12, 7, 5, .30), transparent 33%, transparent 58%, rgba(13, 7, 4, .68)); }
@keyframes jk42-hero-kenburns { from { transform: scale(1.035) translate3d(0, 0, 0); } to { transform: scale(1.11) translate3d(-1.2%, -.8%, 0); } }
.jkct-premium-v42 .jkct-hero-slider-logo-module { position: absolute !important; z-index: 4; top: 20px; right: 50%; width: min(250px, 46%); transform: translateX(50%); }
.jkct-hero-slider-logo { margin: 0; padding: 9px 15px; background: rgba(35, 19, 12, .88); border: 1px solid rgba(229, 192, 132, .55); border-radius: 4px 16px; box-shadow: 0 13px 28px rgba(0, 0, 0, .30); backdrop-filter: blur(11px); }
.jkct-hero-slider-logo img { display: block; width: 100%; max-height: 75px; object-fit: contain; }
.jkct-premium-v42 .jkct-hero-slider-slogan-module { position: absolute !important; z-index: 4; right: 0; bottom: 73px; left: 0; text-align: center; }
.jkct-hero-slider-slogan { display: inline-grid; min-width: min(540px, 76%); margin: 0; padding: 13px 25px; color: #fff1dc; background: rgba(25, 13, 8, .84); border: 1px solid rgba(222, 178, 110, .48); border-radius: 3px 15px; font: 800 10px/1.3 Arial, sans-serif; letter-spacing: .14em; text-transform: uppercase; backdrop-filter: blur(11px); }
.jkct-hero-slider-slogan span { grid-area: 1 / 1; opacity: 0; transform: translateY(8px); transition: opacity .55s ease, transform .55s var(--jk42-ease); }
.jkct-hero-slider-slogan span.is-active { opacity: 1; transform: none; }
.jkct-premium-v42 .jkct-hero-slider-controls-module { position: absolute !important; z-index: 5; right: 18px; bottom: 14px; left: 18px; }
.jkct-hero-slider-controls { display: grid; grid-template-columns: 48px 1fr 48px; align-items: center; gap: 12px; }
.jkct-hero-slider-controls > span { display: flex; justify-content: center; gap: 8px; }
.jkct-hero-slider-controls button { padding: 0; color: #f4d9b4; background: rgba(23, 12, 8, .82); border: 1px solid rgba(225, 182, 112, .55); cursor: pointer; }
.jkct-hero-slider-arrow { width: 44px; height: 44px; border-radius: 50%; font: 34px/1 Georgia, serif; transition: transform .3s ease, background-color .3s ease; }
.jkct-hero-slider-arrow:hover { transform: scale(1.08); background: var(--jk42-walnut); }
.jkct-hero-slider-controls > span button { width: 9px; height: 9px; border-radius: 99px; transition: width .3s ease, background-color .3s ease; }
.jkct-hero-slider-controls > span button.is-active { width: 32px; background: var(--jk42-gold); }

/* Jaśniejsze, pełnowymiarowe medale jakości. */
.jkct-premium-v42 .jkct-trust-band { padding: 58px 0 !important; background: linear-gradient(180deg, #ecdbc1, #f5eadb) !important; border-top: 1px solid rgba(85, 49, 29, .16); border-bottom: 1px solid rgba(85, 49, 29, .16); }
.jkct-premium-v42 .jkct-trust-row { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 22px !important; padding: 0 !important; }
.jkct-premium-v42 .jkct-trust-row > .et_pb_column { float: none !important; width: 100% !important; margin: 0 !important; }
.jkct-premium-v42 .jkct-trust-item { display: grid !important; min-height: 252px !important; padding: 28px !important; grid-template-columns: 94px 1fr !important; align-items: center !important; gap: 23px !important; color: var(--jk42-ink) !important; background: rgba(255, 252, 246, .84) !important; border: 1px solid rgba(92, 54, 31, .20) !important; border-radius: 6px 26px !important; box-shadow: 0 16px 38px rgba(58, 33, 20, .10) !important; }
.jkct-premium-v42 .jkct-trust-item:hover { transform: translateY(-10px) rotate(-.35deg) !important; background: #fffaf2 !important; border-color: rgba(160, 101, 54, .48) !important; box-shadow: 0 27px 56px rgba(59, 33, 20, .18) !important; }
.jkct-premium-v42 .jkct-trust-item__icon { width: 94px !important; height: 94px !important; filter: drop-shadow(0 12px 16px rgba(66, 36, 20, .18)); }
.jkct-premium-v42 .jkct-trust-item h4 { margin: 0 0 10px !important; color: var(--jk42-coffee) !important; font-size: 26px !important; line-height: 1.05 !important; }
.jkct-premium-v42 .jkct-trust-item p { color: #655144 !important; font-size: 14px !important; line-height: 1.6 !important; }

/* Kolekcja i warianty. */
.jkct-collection-heading .jkct-collection-slogan { max-width: 920px; font-size: 18px; line-height: 1.7; }
.jkct-collection-options { display: grid; max-width: 1100px; margin-top: 28px; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; }
.jkct-collection-options > span { display: grid; min-height: 112px; padding: 14px 17px; grid-template-columns: 64px 1fr; grid-template-rows: auto auto; align-items: center; column-gap: 14px; color: var(--jk42-ink); background: rgba(237, 218, 190, .48); border: 1px solid var(--jk42-line); border-radius: 4px 17px; transition: transform .3s var(--jk42-ease), background-color .3s ease; }
.jkct-collection-options > span:hover { transform: translateY(-5px); background: #f0dfc5; }
.jkct-collection-options .jkct-premium-icon { width: 64px; height: 64px; grid-row: 1 / 3; }
.jkct-collection-options b { font: 600 21px/1.15 Georgia, serif; }
.jkct-collection-options small { color: #71594a; font-size: 12px; }

/* Paczki na postumentach: bez maskowania i bez krzywego wycięcia. */
.jkct-premium-v42 .jkct-bestsellers__stage { min-height: 720px; }
.jkct-premium-v42 .jkct-bestseller { width: 24% !important; opacity: .74; filter: brightness(.72) saturate(.72); }
.jkct-premium-v42 .jkct-bestseller[data-position='-2'] { left: 9% !important; bottom: 10% !important; transform: translateX(-50%) scale(.68) !important; }
.jkct-premium-v42 .jkct-bestseller[data-position='-1'] { left: 29% !important; bottom: 11% !important; transform: translateX(-50%) scale(.86) !important; }
.jkct-premium-v42 .jkct-bestseller[data-position='0'] { left: 50% !important; bottom: 12% !important; transform: translateX(-50%) scale(1.08) !important; opacity: 1; filter: none; }
.jkct-premium-v42 .jkct-bestseller[data-position='1'] { left: 71% !important; bottom: 11% !important; transform: translateX(-50%) scale(.86) !important; }
.jkct-premium-v42 .jkct-bestseller[data-position='2'] { left: 91% !important; bottom: 10% !important; transform: translateX(-50%) scale(.68) !important; }
.jkct-premium-v42 .jkct-bestseller__pack { width: 100% !important; height: auto !important; clip-path: none !important; object-fit: contain !important; filter: drop-shadow(0 28px 22px rgba(0, 0, 0, .64)) !important; }
.jkct-premium-v42 .jkct-bestseller__caption { top: auto !important; bottom: -40px !important; width: min(118%, 390px) !important; padding: 13px 19px 16px !important; background: rgba(22, 11, 7, .93) !important; }
.jkct-premium-v42 .jkct-bestseller__country { margin-top: -38px; }
.jkct-premium-v42 .jkct-bestseller__country img { width: 72px !important; height: 48px !important; object-fit: cover; border: 4px solid #f3e0c3; border-radius: 3px !important; clip-path: polygon(0 0, 100% 0, 90% 50%, 100% 100%, 0 100%, 10% 50%); box-shadow: 0 10px 23px rgba(0, 0, 0, .38); }
.jkct-premium-v42 .jkct-bestseller__caption strong { margin-top: 8px; font-size: 28px; }
.jkct-premium-v42 .jkct-bestseller__caption small { font-size: 11px; line-height: 1.45; }

/* Karty katalogu. */
.jkct-premium-v42 .woocommerce ul.products { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 28px !important; }
.jkct-premium-v42 .woocommerce ul.products li.product { padding: 14px 14px 24px !important; text-align: center; background: linear-gradient(145deg, rgba(255, 252, 247, .98), rgba(247, 237, 222, .96)) !important; border: 1px solid rgba(77, 43, 25, .19) !important; border-radius: 6px 27px !important; box-shadow: 0 17px 43px rgba(58, 33, 20, .10) !important; }
.jkct-premium-v42 .woocommerce ul.products li.product:hover { transform: translateY(-10px) !important; border-color: rgba(155, 98, 52, .48) !important; box-shadow: 0 30px 66px rgba(54, 29, 17, .18) !important; }
.jkct-premium-v42 .woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
.jkct-premium-v42 .woocommerce ul.products li.product a.woocommerce-loop-product__link { position: relative; display: block; }
.jkct-premium-v42 .woocommerce ul.products li.product .et_overlay { display: none !important; }
.jkct-product-hover-mark { position: absolute; z-index: 5; top: 13px; right: 13px; bottom: auto; left: 13px; display: grid; height: 0; place-items: center; align-content: center; overflow: hidden; color: #fff2dd; background: rgba(31, 16, 10, .82); border: 1px solid rgba(223, 179, 110, .56); border-radius: 4px 20px; opacity: 0; backdrop-filter: blur(8px); transition: height .45s var(--jk42-ease), opacity .3s ease; pointer-events: none; }
.jkct-product-hover-mark .jkct-premium-icon { width: 76px; height: 76px; filter: drop-shadow(0 12px 18px rgba(0, 0, 0, .34)); }
.jkct-product-hover-mark em { margin-top: 7px; color: #f6dfbd; font: 800 9px/1.2 Arial, sans-serif; font-style: normal; letter-spacing: .12em; text-transform: uppercase; }
.jkct-premium-v42 .woocommerce ul.products li.product:hover .jkct-product-hover-mark { height: min(270px, 58%); opacity: 1; }
.jkct-premium-v42 .woocommerce ul.products li.product .jkct-origin-flag { display: flex !important; width: 100%; min-height: 58px; margin: 10px 0 9px !important; justify-content: center; background: transparent !important; border: 0 !important; }
.jkct-premium-v42 .woocommerce ul.products li.product .jkct-origin-flag__ribbon { display: block; }
.jkct-premium-v42 .woocommerce ul.products li.product .jkct-origin-flag img { width: 72px !important; height: 48px !important; object-fit: cover !important; border: 4px solid #fff7eb !important; border-radius: 2px !important; clip-path: polygon(0 0, 100% 0, 89% 50%, 100% 100%, 0 100%, 11% 50%); box-shadow: 0 10px 20px rgba(59, 32, 18, .19); }
.jkct-premium-v42 .woocommerce ul.products li.product .woocommerce-loop-product__title { min-height: 2.15em; margin: 0 auto 12px !important; text-align: center !important; font-size: clamp(24px, 1.9vw, 32px) !important; line-height: 1.06 !important; }
.jkct-premium-v42 .jkct-loop-profile__notes { min-height: 3em; text-align: center !important; font-size: 13px !important; line-height: 1.5 !important; }
.jkct-premium-v42 .jkct-loop-profile__metrics { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 7px !important; text-align: center; }
.jkct-premium-v42 .jkct-loop-profile__metrics > span { display: grid; justify-items: center; gap: 6px; }
.jkct-premium-v42 .jkct-loop-profile__metrics small { min-height: 2.2em; color: #4c2e20 !important; font-size: 9px !important; line-height: 1.1; letter-spacing: .05em !important; }
.jkct-premium-v42 .jkct-loop-profile .jkct-dots { gap: 4px; }
.jkct-premium-v42 .jkct-loop-profile .jkct-dots i { width: 9px !important; height: 9px !important; }
.jkct-premium-v42 .woocommerce ul.products li.product .price { display: block; margin-top: 15px !important; text-align: center; font-size: 18px !important; }

/* Kompas: mapa świata, róża kierunków i szeroka karta zakupowa. */
.jkct-premium-v42 .jkct-compass-anchor { padding: 70px 0 0 !important; background: #ead8bc !important; }
.jkct-premium-v42 .jkct-compass-anchor > .et_pb_row { padding-bottom: 34px !important; background: rgba(255, 250, 242, .78) !important; border-radius: 6px 28px 0 0 !important; }
.jkct-premium-v42 .jkct-compass-anchor .jkct-section-heading { max-width: 1180px !important; padding: 38px 46px 22px !important; }
.jkct-premium-v42 .jkct-compass-anchor .jkct-section-heading h2 { font-size: clamp(48px, 5vw, 76px) !important; }
.jkct-premium-v42 .jkct-compass-anchor .jkct-premium-icon { width: 78px !important; height: 78px !important; }
.jkct-premium-v42 .jkct-compass-portal { padding: 0 0 84px !important; background: #ead8bc !important; }
.jkct-premium-v42 .jkct-compass.jkct-compass--compact {
  width: min(94%, 1540px) !important;
  max-width: 1540px !important;
  margin: 0 auto !important;
  padding: clamp(30px, 3.6vw, 56px) !important;
  background:
    linear-gradient(rgba(250, 243, 231, .91), rgba(246, 235, 217, .93)),
    url('../generated-v42/coffee-world-compass-v42.webp') center / cover no-repeat !important;
  border: 1px solid rgba(78, 43, 25, .22) !important;
  border-radius: 0 0 7px 34px !important;
  box-shadow: 0 34px 82px rgba(55, 31, 19, .18) !important;
}
.jkct-premium-v42 .jkct-compass__paper { display: none; }
.jkct-premium-v42 .jkct-compass--compact .jkct-compass__layout { display: grid !important; grid-template-columns: minmax(280px, .85fr) minmax(330px, .95fr) minmax(560px, 1.5fr) !important; align-items: start !important; gap: 24px !important; }
.jkct-premium-v42 .jkct-filter-card { padding: 20px !important; background: rgba(255, 251, 244, .86) !important; border: 1px solid rgba(69, 39, 23, .20) !important; box-shadow: 0 14px 35px rgba(57, 32, 19, .09); }
.jkct-premium-v42 .jkct-filter-card legend { color: var(--jk42-coffee) !important; font-size: 20px !important; }
.jkct-premium-v42 .jkct-profile { min-height: 44px; font-size: 11px !important; }
.jkct-premium-v42 .jkct-profile:hover { transform: translateX(5px) !important; }
.jkct-premium-v42 .jkct-range > span { font-size: 12px; }
.jkct-premium-v42 .jkct-range input[type='range'] { height: 8px; }
.jkct-premium-v42 .jkct-map-wrap { padding: 11px !important; background: rgba(39, 21, 13, .90) !important; border-radius: 50% 50% 7px 28px !important; box-shadow: 0 20px 48px rgba(46, 24, 14, .21) !important; }
.jkct-premium-v42 .jkct-map { min-height: 350px !important; background: radial-gradient(circle, rgba(204, 150, 89, .20), rgba(16, 9, 6, .38)), url('../generated-v42/coffee-world-compass-v42.webp') 43% center / 210% auto no-repeat !important; }
.jkct-premium-v42 .jkct-map__label { padding: 2px 5px; color: #f2d9b7 !important; background: rgba(26, 14, 9, .66); border-radius: 4px; }
.jkct-premium-v42 .jkct-marker { max-width: 112px; }
.jkct-premium-v42 .jkct-marker b { font-size: 8px; }
.jkct-premium-v42 .jkct-results { margin-top: 12px !important; padding: 16px !important; background: rgba(45, 24, 15, .92) !important; border-color: rgba(210, 161, 97, .35) !important; }
.jkct-premium-v42 .jkct-results__head h3 { color: #f9e8cf !important; }
.jkct-premium-v42 .jkct-results__head p { color: rgba(245, 222, 190, .70) !important; }
.jkct-premium-v42 .jkct-results__list button { color: #f8e7d0 !important; }
.jkct-premium-v42 .jkct-results__list small { color: rgba(244, 219, 187, .67) !important; }
.jkct-premium-v42 .jkct-results__list em { color: #e5b979 !important; }
.jkct-premium-v42 .jkct-results__toggle { color: #f4d6aa !important; }

.jkct-premium-v42 .jkct-compass--compact .jkct-coffee-card {
  position: sticky !important;
  top: 24px;
  display: grid !important;
  min-height: 660px;
  padding: 18px !important;
  grid-template-columns: minmax(175px, .72fr) minmax(300px, 1.28fr);
  align-items: stretch;
  gap: 18px;
  color: #f8ebda;
  background: linear-gradient(145deg, rgba(20, 10, 7, .98), rgba(55, 30, 19, .97)) !important;
  border: 1px solid rgba(219, 170, 102, .47) !important;
  border-radius: 5px 25px !important;
  box-shadow: 0 27px 58px rgba(42, 21, 12, .30) !important;
}
.jkct-premium-v42 .jkct-coffee-card__media { display: grid; height: auto !important; min-height: 100% !important; padding: 15px 5px 5px; place-items: end center; overflow: hidden; background: radial-gradient(circle at 50% 48%, rgba(203, 148, 84, .20), transparent 57%); border: 1px solid rgba(224, 181, 116, .16); border-radius: 4px 18px; }
.jkct-premium-v42 .jkct-coffee-card__media img { width: 100% !important; height: auto !important; max-height: 580px; object-fit: contain !important; filter: drop-shadow(0 22px 17px rgba(0, 0, 0, .58)); }
.jkct-premium-v42 .jkct-coffee-card__content { min-width: 0; padding: 3px 2px; }
.jkct-premium-v42 .jkct-coffee-card__top { grid-template-columns: 110px 1fr auto !important; align-items: center !important; gap: 14px !important; }
.jkct-coffee-card__flag-ribbon { display: grid; width: 108px; height: 72px; padding: 5px; place-items: center; background: #f6e4c8; clip-path: polygon(0 0, 100% 0, 89% 50%, 100% 100%, 0 100%, 11% 50%); }
.jkct-premium-v42 .jkct-coffee-card__flag { width: 92px !important; height: 60px !important; object-fit: cover; border: 0 !important; border-radius: 2px !important; }
.jkct-premium-v42 .jkct-coffee-card__top h3 { font-size: clamp(29px, 2.4vw, 42px) !important; }
.jkct-premium-v42 .jkct-coffee-card__top > strong { grid-column: auto !important; justify-self: end; color: #26140d !important; background: #e2b16f !important; white-space: nowrap; }
.jkct-premium-v42 .jkct-coffee-card__notes { margin: 14px 0 !important; font-size: 17px !important; }
.jkct-premium-v42 .jkct-coffee-card__metrics { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 8px 17px !important; margin-bottom: 14px !important; }
.jkct-premium-v42 .jkct-coffee-card__metrics > div { display: grid; grid-template-columns: minmax(72px, 1fr) auto; padding: 7px 0; border-bottom: 1px solid rgba(229, 188, 127, .13); }
.jkct-premium-v42 .jkct-coffee-card__metrics dt { font-size: 9px; }
.jkct-premium-v42 .jkct-coffee-card__metrics .jkct-dots i { width: 10px !important; height: 10px !important; }
.jkct-compass-purchase { padding: 15px; background: rgba(255, 250, 242, .07); border: 1px solid rgba(228, 184, 119, .20); border-radius: 4px 16px; }
.jkct-compass-purchase__head { display: flex; align-items: baseline; justify-content: space-between; gap: 14px; }
.jkct-compass-purchase__head h4 { margin: 0; color: #f8e5ca; font: 500 20px/1.2 Georgia, serif; }
.jkct-compass-purchase__head > span { color: #edbe7b; font: 800 15px/1.2 Arial, sans-serif; white-space: nowrap; }
.jkct-compass-price-grid { display: grid; margin: 12px 0; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
.jkct-compass-price-grid > span { display: grid; min-height: 57px; padding: 8px 6px; place-items: center; color: #f5e3ca; background: rgba(255, 255, 255, .045); border: 1px solid rgba(223, 175, 107, .17); border-radius: 3px 11px; text-align: center; }
.jkct-compass-price-grid small { color: rgba(247, 222, 188, .68); font: 800 8px/1 Arial, sans-serif; letter-spacing: .06em; text-transform: uppercase; }
.jkct-compass-price-grid strong { font: 700 12px/1.2 Arial, sans-serif; }
.jkct-compass-variant-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.jkct-compass-variant-fields label { display: grid; gap: 5px; }
.jkct-compass-variant-fields label > span { color: rgba(245, 220, 188, .72); font: 800 8px/1 Arial, sans-serif; letter-spacing: .08em; text-transform: uppercase; }
.jkct-compass-variant-fields select { width: 100%; min-height: 42px; padding: 8px 30px 8px 10px; color: var(--jk42-ink); background: #fff8ec; border: 1px solid rgba(224, 176, 106, .38); border-radius: 3px 10px; font: 700 11px/1.2 Arial, sans-serif; }
.jkct-compass-purchase__actions { display: grid; margin-top: 10px; grid-template-columns: 1.4fr .8fr; gap: 8px; }
.jkct-compass-purchase__actions button,
.jkct-compass-purchase__actions a { display: flex; min-height: 46px; padding: 10px 12px; align-items: center; justify-content: center; border-radius: 3px 12px; font: 800 9px/1.2 Arial, sans-serif; letter-spacing: .07em; text-align: center; text-transform: uppercase; }
.jkct-compass-purchase__actions button { color: #21110b; background: linear-gradient(135deg, #f0c986, #bd7c3f); border: 1px solid #e4b66f; cursor: pointer; }
.jkct-compass-purchase__actions button:hover { transform: translateY(-3px); box-shadow: 0 13px 25px rgba(0, 0, 0, .23); }
.jkct-compass-purchase__actions button:disabled { opacity: .48; cursor: not-allowed; }
.jkct-compass-purchase__actions button.is-success { background: linear-gradient(135deg, #c7d99e, #789157); }
.jkct-compass-purchase__actions a { color: #f5dfc2 !important; border: 1px solid rgba(228, 184, 119, .34); }
.jkct-compass-purchase__status { min-height: 1.4em; margin: 7px 0 0; color: rgba(245, 220, 187, .72); font-size: 9px; }

/* Ustka. */
.jkct-premium-v42 .jkct-about-row { grid-template-columns: minmax(520px, 1fr) minmax(520px, 1fr) !important; }
.jkct-ustka-photo { position: relative; overflow: hidden; }
.jkct-ustka-photo img { display: block; width: 100%; aspect-ratio: 3 / 2 !important; object-fit: cover !important; }
.jkct-ustka-photo > span { position: absolute; right: 18px; bottom: 18px; padding: 10px 14px; color: #fff0dc; background: rgba(30, 16, 10, .84); border: 1px solid rgba(220, 177, 110, .44); border-radius: 3px 12px; font: 800 9px/1.2 Arial, sans-serif; letter-spacing: .1em; text-transform: uppercase; }
.jkct-ustka-symbols { display: grid; margin: 27px 0; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; }
.jkct-ustka-symbols > span { display: grid; min-height: 126px; padding: 12px; justify-items: center; text-align: center; background: rgba(255, 251, 244, .58); border: 1px solid var(--jk42-line); border-radius: 4px 15px; transition: transform .3s var(--jk42-ease); }
.jkct-ustka-symbols > span:hover { transform: translateY(-5px); }
.jkct-ustka-symbols .jkct-premium-icon { width: 58px; height: 58px; }
.jkct-ustka-symbols b { font: 600 17px/1.15 Georgia, serif; }
.jkct-ustka-symbols small { color: #715a4b; font-size: 10px; }

/* Blog archive + listing na stronie głównej. */
.jkct-premium-v42 .jkct-blog-row,
.jkct-premium-v42 .jkct-blog-row > .et_pb_column,
.jkct-premium-v42 .jkct-blog-grid,
.jkct-premium-v42 .jkct-blog-grid .et_pb_ajax_pagination_container { width: 100% !important; max-width: none !important; }
.jkct-premium-v42 .jkct-blog-grid .et_pb_ajax_pagination_container { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 28px !important; }
.jkct-premium-v42 .jkct-blog-grid .et_pb_post { float: none !important; width: auto !important; min-width: 0 !important; margin: 0 !important; overflow: hidden; background: linear-gradient(145deg, #fffaf2, #f1e0c8) !important; border: 1px solid rgba(76, 42, 24, .18) !important; border-top: 4px solid var(--jk42-copper) !important; border-radius: 5px 24px !important; box-shadow: 0 20px 48px rgba(55, 31, 18, .11) !important; transition: transform .4s var(--jk42-ease), box-shadow .4s ease, border-color .3s ease; }
.jkct-premium-v42 .jkct-blog-grid .et_pb_post:hover { transform: translateY(-9px); box-shadow: 0 32px 70px rgba(55, 31, 18, .19) !important; }
.jkct-premium-v42 .jkct-blog-grid .et_pb_post > :where(.entry-title, .post-meta, .post-content, .post-content-inner, .more-link, .jkct-blog-card__reading, .jkct-blog-card__icon) { margin-right: 24px !important; margin-left: 24px !important; }
.jkct-premium-v42 .jkct-blog-grid .entry-featured-image-url { display: block; margin: 0 0 18px !important; overflow: hidden; }
.jkct-premium-v42 .jkct-blog-grid .entry-featured-image-url img { width: 100%; height: 250px; object-fit: cover; transition: transform .7s var(--jk42-ease); }
.jkct-premium-v42 .jkct-blog-grid .et_pb_post:hover .entry-featured-image-url img { transform: scale(1.055); }
.jkct-premium-v42 .jkct-blog-card__icon { width: 62px !important; height: 62px !important; margin-top: -49px !important; background-color: #fff8ec; border: 5px solid #fff8ec; border-radius: 50%; box-shadow: 0 12px 24px rgba(57, 31, 18, .18); }
.jkct-premium-v42 .jkct-blog-grid .entry-title { margin-top: 9px !important; font-size: clamp(27px, 2.2vw, 38px) !important; line-height: 1.05 !important; }
.jkct-premium-v42 .jkct-blog-grid .post-meta { font-size: 10px !important; line-height: 1.4 !important; }
.jkct-premium-v42 .jkct-blog-grid .post-content { font-size: 14px; line-height: 1.65; }
.jkct-premium-v42 .jkct-blog-grid .more-link { display: inline-flex; margin-top: 13px !important; margin-bottom: 25px !important; color: var(--jk42-walnut) !important; font: 800 10px/1.2 Arial, sans-serif; letter-spacing: .08em; text-transform: uppercase; }
.jkct-premium-v42 .jkct-blog-grid .jkct-blog-card--featured { display: grid !important; grid-column: 1 / -1 !important; grid-template-columns: minmax(480px, 1.1fr) minmax(430px, .9fr) !important; min-height: 480px; color: #f7e8d2 !important; background: linear-gradient(135deg, #170c08, #4b2919) !important; border-top-color: var(--jk42-gold) !important; }
.jkct-premium-v42 .jkct-blog-grid .jkct-blog-card--featured .entry-featured-image-url { grid-column: 1; grid-row: 1 / span 7; height: 100%; min-height: 480px; margin: 0 !important; }
.jkct-premium-v42 .jkct-blog-grid .jkct-blog-card--featured .entry-featured-image-url img { height: 100%; min-height: 480px; }
.jkct-premium-v42 .jkct-blog-grid .jkct-blog-card--featured :where(.entry-title, .post-meta, .post-content, .post-content-inner, .more-link, .jkct-blog-card__reading, .jkct-blog-card__icon) { grid-column: 2; color: #f3dfc3 !important; }
.jkct-premium-v42 .jkct-blog-grid .jkct-blog-card--featured .jkct-blog-card__icon { margin-top: 45px !important; background-color: #f3dfc3; border-color: #f3dfc3; }
.jkct-premium-v42 .jkct-blog-card__latest { top: 18px !important; left: 18px !important; padding: 10px 16px !important; }
.jkct-premium-v42 .jkct-blog-filterbar { min-height: 90px; padding: 13px 16px !important; background: linear-gradient(135deg, #1d100b, #4a2a1a) !important; border-radius: 5px 22px !important; }
.jkct-premium-v42 .jkct-blog-filterbar button { min-height: 58px; padding: 7px 14px !important; }
.jkct-premium-v42 .jkct-blog-filterbar button .jkct-premium-icon { width: 40px !important; height: 40px !important; }
.jkct-premium-v42 .jkct-blog-filterbar__search .jkct-premium-icon { width: 38px !important; height: 38px !important; }

/* FAQ w natywnych modułach Text. */
.jkct-premium-v42 .jkct-faq-section { padding: clamp(72px, 8vw, 116px) 0 !important; }
.jkct-premium-v42 .jkct-faq-row { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 22px !important; }
.jkct-premium-v42 .jkct-faq-row > .et_pb_column { float: none !important; width: 100% !important; margin: 0 !important; }
.jkct-premium-v42 .jkct-faq-module { margin-bottom: 13px !important; }
.jkct-faq-item { overflow: hidden; background: rgba(255, 251, 244, .82); border: 1px solid rgba(78, 44, 25, .19); border-radius: 4px 17px; box-shadow: 0 12px 29px rgba(55, 31, 18, .08); transition: border-color .3s ease, box-shadow .3s ease; }
.jkct-faq-item[open] { border-color: rgba(153, 95, 50, .45); box-shadow: 0 19px 38px rgba(55, 31, 18, .13); }
.jkct-faq-item summary { position: relative; padding: 20px 58px 20px 22px; color: var(--jk42-coffee); font: 600 20px/1.25 Georgia, serif; cursor: pointer; list-style: none; }
.jkct-faq-item summary::-webkit-details-marker { display: none; }
.jkct-faq-item summary::after { content: '+'; position: absolute; top: 50%; right: 19px; display: grid; width: 29px; height: 29px; place-items: center; transform: translateY(-50%); color: #fff1db; background: var(--jk42-walnut); border-radius: 50%; font: 22px/1 Georgia, serif; transition: transform .3s ease; }
.jkct-faq-item[open] summary::after { content: '−'; transform: translateY(-50%) rotate(180deg); }
.jkct-faq-item > div { padding: 0 22px 20px; color: #665144; font-size: 14px; line-height: 1.7; }

/* Karta produktu i redakcyjne sekcje SEO. */
.jkct-premium-v42.single-product .jpld1-hero-row { align-items: stretch !important; }
.jkct-premium-v42.single-product .jpld1-media-col,
.jkct-premium-v42.single-product .jpld1-summary-col { border-radius: 6px 28px !important; }
.jkct-premium-v42.single-product .jpld1-summary-col { padding: clamp(28px, 3.2vw, 52px) !important; }
.jkct-premium-v42.single-product .jkct-origin-flag { display: inline-flex; margin-bottom: 18px; padding: 7px 14px 7px 8px; align-items: center; gap: 10px; color: #f7e5cc; background: var(--jk42-coffee); border: 1px solid rgba(205, 153, 91, .42); border-radius: 3px 14px; }
.jkct-premium-v42.single-product .jkct-origin-flag img { width: 72px !important; height: 48px !important; object-fit: cover; border: 3px solid #fff4e1; }
.jkct-premium-v42.single-product .jkct-product-profile { padding: 25px !important; }
.jkct-premium-v42.single-product .jkct-profile-grid { gap: 12px 22px !important; }
.jkct-premium-v42.single-product .jkct-profile-grid .jkct-dots { gap: 6px; }
.jkct-premium-v42.single-product .jkct-profile-grid .jkct-dots i { width: 13px !important; height: 13px !important; }
.jkct-product-profile__notes > strong { display: block; margin-bottom: 11px; color: var(--jk42-coffee); font: 600 18px/1.2 Georgia, serif; }
.jkct-flavour-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.jkct-flavour-chips > span { display: inline-flex; min-height: 50px; padding: 6px 12px 6px 7px; align-items: center; gap: 7px; color: var(--jk42-coffee); background: #f1e0c8; border: 1px solid rgba(92, 53, 31, .18); border-radius: 99px; }
.jkct-flavour-chips .jkct-premium-icon { width: 38px; height: 38px; }
.jkct-flavour-chips em { font: 700 11px/1.2 Arial, sans-serif; font-style: normal; text-transform: capitalize; }
.jkct-premium-v42.single-product .variations select { min-height: 55px !important; font-size: 14px !important; }
.jkct-premium-v42.single-product .single_variation_wrap .woocommerce-variation-price { font-size: 24px; }
.jkct-product-editorial { display: grid; gap: 26px; }
.jkct-product-editorial > section { padding: clamp(28px, 3.5vw, 54px); background: rgba(255, 251, 244, .82); border: 1px solid var(--jk42-line); border-radius: 6px 28px; box-shadow: 0 18px 45px rgba(54, 30, 18, .09); }
.jkct-product-editorial h2 { font-size: clamp(40px, 4.2vw, 66px); line-height: 1; }
.jkct-product-editorial h3 { font-size: clamp(28px, 3vw, 43px); line-height: 1.05; }
.jkct-taste-note-cloud { display: flex; margin: 22px 0; flex-wrap: wrap; gap: 10px; }
.jkct-taste-note-cloud > span { display: inline-flex; min-height: 54px; padding: 10px 16px; align-items: center; gap: 9px; color: #f7e6cf; background: linear-gradient(145deg, #24130d, #5a3522); border: 1px solid rgba(203, 151, 88, .45); border-radius: 4px 18px; font: 700 12px/1.2 Arial, sans-serif; text-transform: capitalize; }
.jkct-taste-note-cloud i { width: 21px; height: 21px; background: url('../premium/premium-icons.webp') 0 0 / 400% 300% no-repeat; }
.jkct-product-story-grid { display: grid; padding: 0 !important; grid-template-columns: 1fr 1fr; gap: 20px; background: transparent !important; border: 0 !important; box-shadow: none !important; }
.jkct-product-story-grid > article { padding: clamp(26px, 3vw, 44px); background: #f3e4cf; border: 1px solid var(--jk42-line); border-radius: 5px 24px; }
.jkct-product-story-grid > article:first-child { color: #f8e8d2; background: linear-gradient(145deg, #1b0f0a, #50301f); }
.jkct-product-story-grid > article:first-child h3,
.jkct-product-story-grid > article:first-child .jkct-eyebrow { color: #f3d5ad !important; }
.jkct-country-origin { display: grid !important; grid-template-columns: .8fr 1.2fr; align-items: center; gap: 34px; }
.jkct-country-map { position: relative; min-height: 400px; overflow: hidden; background: url('../generated-v42/coffee-world-compass-v42.webp') center / cover no-repeat; border: 1px solid rgba(89, 51, 29, .22); border-radius: 5px 24px; box-shadow: inset 0 0 70px rgba(83, 48, 27, .10); }
.jkct-country-map > span { position: absolute; top: var(--map-y); left: var(--map-x); display: grid; justify-items: center; transform: translate(-50%, -50%); }
.jkct-country-map b { width: 24px; height: 24px; background: #6e2519; border: 5px solid #f5d29d; border-radius: 50%; box-shadow: 0 0 0 9px rgba(110, 37, 25, .19), 0 9px 20px rgba(72, 36, 20, .24); animation: jk42-map-pulse 2.2s ease-in-out infinite; }
.jkct-country-map em { margin-top: 10px; padding: 7px 11px; color: #fff0dc; background: #2e180f; border-radius: 3px 10px; font: 800 9px/1 Arial, sans-serif; font-style: normal; letter-spacing: .08em; text-transform: uppercase; }
@keyframes jk42-map-pulse { 50% { box-shadow: 0 0 0 15px rgba(110, 37, 25, .05), 0 9px 20px rgba(72, 36, 20, .24); } }
.jkct-product-crosslinks p:last-child { display: flex; flex-wrap: wrap; gap: 10px; }
.jkct-product-crosslinks a { display: inline-flex; min-height: 48px; padding: 10px 17px; align-items: center; color: #f8e7d0 !important; background: var(--jk42-coffee); border: 1px solid rgba(197, 143, 80, .43); border-radius: 4px 16px; font: 800 9px/1.2 Arial, sans-serif; letter-spacing: .07em; text-transform: uppercase; transition: transform .3s var(--jk42-ease), background-color .3s ease; }
.jkct-product-crosslinks a:hover { transform: translateY(-4px); background: var(--jk42-walnut); }
.jkct-product-editorial__fineprint { padding: 15px 20px; color: #6c594d; background: rgba(234, 216, 190, .45); border-left: 4px solid var(--jk42-gold); font-size: 12px; }
.jkct-premium-v42.single-product .jpld1-related-heading { max-width: 980px; margin-bottom: 28px; }

/* Pojedynczy wpis: pełna szerokość, bez prawego widgetu. */
.jkct-premium-single-post #main-content .container { width: min(92%, 1180px) !important; max-width: 1180px !important; padding-top: clamp(55px, 7vw, 95px) !important; }
.jkct-premium-single-post #main-content .container::before { display: none !important; }
.jkct-premium-single-post #left-area { float: none !important; width: 100% !important; padding-right: 0 !important; }
.jkct-premium-single-post #sidebar { display: none !important; }
.jkct-premium-single-post article.et_pb_post { overflow: hidden; padding: clamp(28px, 5vw, 72px); background: rgba(255, 251, 244, .94); border: 1px solid var(--jk42-line); border-radius: 7px 34px; box-shadow: var(--jk42-shadow); }
.jkct-premium-single-post .entry-title { max-width: 920px; margin-right: auto; margin-left: auto; text-align: center; font-size: clamp(44px, 6vw, 78px) !important; line-height: .98 !important; }
.jkct-premium-single-post .post-meta { text-align: center; }
.jkct-premium-single-post .entry-featured-image-url { display: block; margin: 35px auto; overflow: hidden; border-radius: 5px 25px; }
.jkct-premium-single-post .entry-featured-image-url img { width: 100%; max-height: 620px; object-fit: cover; }
.jkct-premium-single-post .entry-content { max-width: 880px; margin: auto; color: #4f3c31; font-size: 18px; line-height: 1.85; }
.jkct-premium-single-post .entry-content h2 { margin-top: 1.6em; color: var(--jk42-coffee); font-size: clamp(34px, 4vw, 52px); line-height: 1.05; }
.jkct-premium-single-post .entry-content h3 { margin-top: 1.4em; color: var(--jk42-walnut); font-size: 30px; }
.jkct-premium-single-post .entry-content blockquote { margin: 32px 0; padding: 24px 28px; background: #f0dfc6; border-left: 5px solid var(--jk42-copper); border-radius: 0 4px 18px 0; }

/* Stopka: marka + rzeczywista mapa + trzy równe kolumny. */
.jkct-premium-v42 .jkf3-footer { padding-top: 72px !important; }
.jkct-premium-v42 .jkf3-brand-map-row { display: grid !important; grid-template-columns: minmax(430px, .72fr) minmax(620px, 1.28fr) !important; gap: 22px !important; align-items: stretch !important; padding-bottom: 24px !important; }
.jkct-premium-v42 .jkf3-brand-map-row > .et_pb_column,
.jkct-premium-v42 .jkf3-services-row > .et_pb_column { float: none !important; width: 100% !important; margin: 0 !important; }
.jkct-premium-v42 .jkf3-service-block,
.jkct-premium-v42 .jkf3-map-block { height: 100%; padding: 28px !important; background: linear-gradient(145deg, rgba(255, 255, 255, .055), rgba(255, 255, 255, .018)); border: 1px solid rgba(219, 176, 109, .22); border-radius: 5px 23px; }
.jkct-premium-v42 .jkf3-brand-logo img { width: min(300px, 100%) !important; }
.jkct-premium-v42 .jkf3-map { position: relative; min-height: 430px; overflow: hidden; border: 1px solid rgba(224, 182, 116, .28); border-radius: 4px 19px; }
.jkct-premium-v42 .jkf3-map iframe { display: block; width: 100%; height: 430px; border: 0; filter: sepia(.62) saturate(.72) contrast(.92); }
.jkct-premium-v42 .jkf3-map > div { position: absolute; right: 14px; bottom: 14px; left: 14px; display: grid; padding: 12px; grid-template-columns: 52px 1fr auto; align-items: center; gap: 10px; color: #f8e8d2; background: rgba(24, 12, 8, .90); border: 1px solid rgba(222, 179, 110, .42); border-radius: 3px 13px; backdrop-filter: blur(10px); }
.jkct-premium-v42 .jkf3-map .jkct-premium-icon { width: 52px; height: 52px; }
.jkct-premium-v42 .jkf3-map p { margin: 0; font-size: 12px; line-height: 1.5; }
.jkct-premium-v42 .jkf3-map a { color: #f0c27d !important; font: 800 9px/1.2 Arial, sans-serif; letter-spacing: .07em; text-transform: uppercase; }
.jkct-premium-v42 .jkf3-services-row { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 22px !important; padding: 0 0 34px !important; }
.jkct-premium-v42 .jkf3-service-block h3 { display: flex; align-items: center; gap: 10px; font-size: 25px; }
.jkct-premium-v42 .jkf3-service-block h3 .jkct-premium-icon { width: 52px; height: 52px; flex: 0 0 52px; }
.jkct-premium-v42 .jkf3-link-list,
.jkct-premium-v42 .jkf3-link-list li { margin: 0 !important; padding: 0 !important; list-style: none !important; }
.jkct-premium-v42 .jkf3-link-list li::marker { content: '' !important; }
.jkct-premium-v42 .jkf3-link-list a { padding: 10px 10px 10px 22px !important; }
.jkct-premium-v42 .jkf3-link-list a::before { content: '◆' !important; left: 6px !important; }
.jkct-premium-v42 .jkf3-commerce-tile { min-height: 100px; grid-template-columns: 68px 1fr !important; }
.jkct-premium-v42 .jkf3-commerce-tile .jkct-premium-icon { width: 64px !important; height: 64px !important; }
.jkct-premium-v42 .jkf3-social-buttons .jkct-premium-icon { width: 50px !important; height: 50px !important; }

/* Powrót do góry jako filiżanka z pierścieniem postępu. */
.jkct-premium-v42 .jkct-back-to-top { width: 72px !important; height: 72px !important; border: 3px solid transparent !important; background: linear-gradient(#21120c, #21120c) padding-box, conic-gradient(var(--jk42-gold) var(--jkct-scroll-progress), rgba(255,255,255,.16) 0) border-box !important; box-shadow: 0 18px 35px rgba(38, 20, 12, .30) !important; }
.jkct-premium-v42 .jkct-back-to-top .jkct-premium-icon { width: 44px !important; height: 44px !important; }

@media (max-width: 1320px) {
  .jkct-premium-v42 .jkh1-main > .et_pb_row { grid-template-columns: 245px minmax(520px, 1fr) 310px !important; }
  .jkct-premium-v42 .jkh1-nav-link { padding: 0 8px !important; font-size: 11px !important; }
  .jkct-premium-v42 .jkh1-action { width: 98px !important; }
  .jkct-header-experience__inner { grid-template-columns: .95fr 1.05fr; }
  .jkct-header-experience__chooser > small { display: none; }
  .jkct-premium-v42 .jkct-trust-item { grid-template-columns: 74px 1fr !important; padding: 20px !important; }
  .jkct-premium-v42 .jkct-trust-item__icon { width: 74px !important; height: 74px !important; }
  .jkct-premium-v42 .jkct-compass--compact .jkct-compass__layout { grid-template-columns: minmax(250px, .8fr) minmax(300px, .9fr) minmax(460px, 1.35fr) !important; }
  .jkct-premium-v42 .jkct-compass--compact .jkct-coffee-card { grid-template-columns: 145px 1fr; }
  .jkct-premium-v42 .jkct-coffee-card__top { grid-template-columns: 92px 1fr !important; }
  .jkct-premium-v42 .jkct-coffee-card__top > strong { grid-column: 1 / -1 !important; justify-self: start; }
  .jkct-coffee-card__flag-ribbon { width: 90px; height: 60px; }
  .jkct-premium-v42 .jkct-coffee-card__flag { width: 76px !important; height: 50px !important; }
}

@media (max-width: 1100px) {
  .jkct-premium-v42 .jkh1-utility > .et_pb_row { grid-template-columns: 1fr auto !important; }
  .jkct-premium-v42 .jkh1-utility > .et_pb_row > .et_pb_column:nth-child(2) { display: none !important; }
  .jkct-premium-v42 .jkh1-main > .et_pb_row { grid-template-columns: minmax(230px, 300px) 1fr !important; }
  .jkct-premium-v42 .jkh1-native-nav { display: none; }
  .jkct-premium-v42 .jkh1-native-actions { display: flex !important; justify-content: flex-end; }
  .jkct-header-experience__inner { grid-template-columns: 1fr; padding: 11px 0; }
  .jkct-header-experience__delivery { padding: 0 0 11px; border-right: 0; border-bottom: 1px solid rgba(232, 193, 135, .23); }
  .jkct-header-experience__chooser { padding: 11px 0 0; }
  .jkct-premium-v42 .jkct-hero-row { grid-template-columns: 1fr !important; }
  .jkct-premium-v42 .jkct-hero-slider { min-height: 610px !important; }
  .jkct-premium-v42 .jkct-hero-slide img { min-height: 610px; }
  .jkct-premium-v42 .jkct-trust-row { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .jkct-premium-v42 .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .jkct-premium-v42 .jkct-compass--compact .jkct-compass__layout { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .jkct-premium-v42 .jkct-coffee-card { grid-column: 1 / -1; position: relative !important; grid-template-columns: minmax(220px, .7fr) 1.3fr !important; min-height: 590px !important; }
  .jkct-premium-v42 .jkct-blog-grid .et_pb_ajax_pagination_container { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .jkct-premium-v42 .jkct-blog-grid .jkct-blog-card--featured { grid-template-columns: 1fr 1fr !important; }
  .jkct-premium-v42 .jkf3-brand-map-row { grid-template-columns: 1fr !important; }
}

@media (max-width: 780px) {
  .jkct-premium-v42 .jkh1-utility { min-height: 62px !important; }
  .jkct-premium-v42 .jkh1-utility > .et_pb_row { min-height: 58px !important; grid-template-columns: 1fr auto !important; }
  .jkct-premium-v42 .jkh1-utility .jkh1-utility-button { min-height: 58px; padding: 4px; }
  .jkct-premium-v42 .jkh1-utility-button .jkct-premium-icon { width: 43px !important; height: 43px !important; flex-basis: 43px; }
  .jkct-premium-v42 .jkh1-utility-media .jkh1-utility-button span { display: none; }
  .jkct-premium-v42 .jkh1-main > .et_pb_row { min-height: 112px !important; grid-template-columns: minmax(165px, 215px) 1fr !important; gap: 8px !important; }
  .jkct-premium-v42 .jkh1-logo-panel,
  .jkct-premium-v42 .jkh1-native-actions { min-height: 112px !important; }
  .jkct-premium-v42 .jkh1-logo { min-height: 96px; padding: 8px 12px; }
  .jkct-premium-v42 .jkh1-action { display: none !important; }
  .jkct-premium-v42 .jkh1-action--cart,
  .jkct-premium-v42 .jkh1-menu-toggle { display: inline-flex !important; width: 64px !important; min-height: 76px !important; height: 76px !important; }
  .jkct-header-experience__delivery > .jkct-premium-icon { width: 48px; height: 48px; flex-basis: 48px; }
  .jkct-header-experience__delivery > div { grid-template-columns: 1fr; }
  .jkct-header-experience__delivery small { display: none; }
  .jkct-header-experience__chooser { display: grid; grid-template-columns: auto 1fr; gap: 8px; }
  .jkct-header-experience__chooser > div { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, 1fr); }
  .jkct-header-experience__chooser > a { justify-self: end; }
  .jkct-premium-v42 .jkct-hero-copy h1 { font-size: clamp(46px, 14vw, 70px) !important; }
  .jkct-premium-v42 .jkct-hero-slider,
  .jkct-premium-v42 .jkct-hero-slide img { min-height: 500px !important; }
  .jkct-hero-slider-slogan { min-width: calc(100% - 34px); padding: 10px 13px; font-size: 8px; }
  .jkct-premium-v42 .jkct-trust-row,
  .jkct-collection-options,
  .jkct-premium-v42 .woocommerce ul.products,
  .jkct-premium-v42 .jkct-compass--compact .jkct-compass__layout,
  .jkct-premium-v42 .jkct-blog-grid .et_pb_ajax_pagination_container,
  .jkct-premium-v42 .jkct-faq-row,
  .jkct-premium-v42 .jkf3-services-row,
  .jkct-product-story-grid,
  .jkct-country-origin { grid-template-columns: 1fr !important; }
  .jkct-premium-v42 .jkct-trust-item { min-height: 190px !important; }
  .jkct-premium-v42 .jkct-bestsellers__stage { min-height: 570px !important; }
  .jkct-premium-v42 .jkct-bestseller { width: 58% !important; }
  .jkct-premium-v42 .jkct-bestseller[data-position='-2'],
  .jkct-premium-v42 .jkct-bestseller[data-position='2'] { opacity: 0 !important; pointer-events: none; }
  .jkct-premium-v42 .jkct-bestseller[data-position='-1'] { left: 17% !important; transform: translateX(-50%) scale(.62) !important; }
  .jkct-premium-v42 .jkct-bestseller[data-position='0'] { left: 50% !important; transform: translateX(-50%) scale(.88) !important; }
  .jkct-premium-v42 .jkct-bestseller[data-position='1'] { left: 83% !important; transform: translateX(-50%) scale(.62) !important; }
  .jkct-premium-v42 .jkct-compass.jkct-compass--compact { width: 96% !important; padding: 18px !important; }
  .jkct-premium-v42 .jkct-coffee-card { grid-column: auto; grid-template-columns: 1fr !important; min-height: 0 !important; }
  .jkct-premium-v42 .jkct-coffee-card__media { min-height: 320px !important; }
  .jkct-premium-v42 .jkct-coffee-card__media img { max-height: 400px; }
  .jkct-premium-v42 .jkct-coffee-card__metrics { grid-template-columns: 1fr !important; }
  .jkct-premium-v42 .jkct-coffee-card__top { grid-template-columns: 92px 1fr !important; }
  .jkct-premium-v42 .jkct-coffee-card__top > strong { grid-column: 1 / -1 !important; }
  .jkct-compass-price-grid { grid-template-columns: repeat(2, 1fr); }
  .jkct-premium-v42 .jkct-blog-grid .jkct-blog-card--featured { display: block !important; min-height: 0; }
  .jkct-premium-v42 .jkct-blog-grid .jkct-blog-card--featured .entry-featured-image-url,
  .jkct-premium-v42 .jkct-blog-grid .jkct-blog-card--featured .entry-featured-image-url img { min-height: 280px; height: 280px; }
  .jkct-ustka-symbols { grid-template-columns: 1fr; }
  .jkct-country-map { min-height: 310px; }
  .jkct-premium-v42 .jkf3-map > div { grid-template-columns: 46px 1fr; }
  .jkct-premium-v42 .jkf3-map > div > a { grid-column: 2; }
  .jkct-premium-single-post article.et_pb_post { padding: 24px 18px; }
  .jkct-premium-single-post .entry-content { font-size: 16px; }
}

@media (prefers-reduced-motion: reduce) {
  .jkct-premium-v42 .jkct-hero-slide.is-active img,
  .jkct-country-map b { animation: none !important; }
}
