/*
Theme Name: GC AM — GorillaCoffee
Theme URI: https://gorillacoffee.pl
Author: Alfabet Marki
Author URI: https://alfabetmarki.pl
Description: Lekki, wydajnościowy motyw WooCommerce dla GorillaCoffee.pl (palarnia kawy specialty Ingagi). Gutenberg-first, natywna wyszukiwarka live, ulubione, auto-bestseller i szybki zwrot UE. System designu Ingagi Coffee: deep-indigo + warm-coffee, zielone CTA, Fraunces / Inter / JetBrains Mono.
Version: 1.0.0
Requires at least: 6.4
Requires PHP: 8.0
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: gc-am
WC requires at least: 8.0
WC tested up to: 9.6
*/

/* ============================================================
   1. DESIGN TOKENS  (źródło: colors_and_type.css, Ingagi Coffee)
   ============================================================ */
:root{
  /* Brand core */
  --indigo:#1E1B50; --indigo-deep:#15123F; --indigo-ink:#0F0D38;
  --brand:#332B70; --accent:#332B70;
  /* Green CTA / success */
  --green:#64BC51; --green-dark:#56A546;
  /* Warm / kraft / coffee */
  --kraft:#CC9E86; --kraft-light:#E8D9C4; --brown:#4D2E23; --brown-mid:#5A382A; --lime:#E4ECBF;
  /* Surfaces */
  --bg:#FFFFFF; --bg-warm:#FBF8F2; --bg-paper:#FAFAF6; --bg-chip:#F4EFE6;
  --bg-table:#FBF7EE; --trust-bg:#F6F8EE; --summary-bg:#FBF7EE;
  /* Text */
  --ink:#1A1820; --text:#282A29; --muted:#7A7468; --muted-2:#B8B0A3; --muted-cool:#6B6478;
  --on-dark:#FFFFFF; --on-dark-soft:rgba(255,255,255,.78);
  /* Lines */
  --border:#EFE9DC; --border-strong:#D8CFBE; --hairline:#EDE6DC;
  /* Status */
  --sale:#C8442C; --heart:#E55353; --star:#E8B647;
  /* Radii */
  --r-xs:4px; --r-sm:8px; --r-md:10px; --r-lg:14px; --r-xl:20px; --r-pill:999px;
  /* Shadows */
  --shadow-card:0 1px 0 rgba(30,27,80,.02);
  --shadow-card-hover:0 18px 40px rgba(30,27,80,.10);
  --shadow-soft:0 12px 28px rgba(30,27,80,.08);
  --shadow-cta:0 4px 12px rgba(100,188,81,.30);
  --shadow-cta-lg:0 10px 28px rgba(100,188,81,.42);
  --shadow-drawer:0 -10px 40px rgba(30,27,80,.20);
  /* Type families */
  --serif:"Fraunces","Playfair Display",ui-serif,Georgia,serif;
  --sans:"Inter",-apple-system,"SF Pro Text",system-ui,sans-serif;
  --mono:"JetBrains Mono",ui-monospace,monospace;
  /* Type scale (desktop) */
  --fs-display:64px; --fs-h1:44px; --fs-h2:38px; --fs-h3:22px;
  --fs-lead:18px; --fs-body:15px; --fs-sm:13px; --fs-xs:11px;
  /* Layout */
  --container:1320px; --gutter:32px; --transition:200ms cubic-bezier(.4,0,.2,1);
}

/* ============================================================
   2. RESET / BASE
   ============================================================ */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--sans);font-size:var(--fs-body);line-height:1.5;
  color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto;display:block}
a{color:var(--brand);text-decoration:none;transition:color var(--transition)}
a:hover{color:var(--indigo)}
button{font-family:inherit;cursor:pointer}
:focus-visible{outline:2px solid var(--green);outline-offset:2px}
.gc-container{max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.gc-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ============================================================
   3. TYPOGRAFIA (semantic)
   ============================================================ */
.gc-display{font-family:var(--serif);font-weight:500;font-size:var(--fs-display);line-height:1.02;letter-spacing:-1.5px;color:var(--on-dark);text-wrap:balance}
.gc-h1{font-family:var(--serif);font-weight:500;font-size:var(--fs-h1);line-height:1;letter-spacing:-1px;color:var(--brand)}
.gc-h2{font-family:var(--serif);font-weight:500;font-size:var(--fs-h2);line-height:1.1;letter-spacing:-.6px;color:var(--ink)}
.gc-h1 em,.gc-h2 em{font-style:italic;color:var(--accent)}
.gc-h3{font-family:var(--serif);font-weight:600;font-size:var(--fs-h3);line-height:1.2;letter-spacing:-.2px;color:var(--brand)}
.gc-lead{font-family:var(--sans);font-weight:400;font-size:var(--fs-lead);line-height:1.55;color:var(--muted)}
.gc-small{font-size:var(--fs-sm);color:var(--muted)}
.gc-eyebrow{font-family:var(--sans);font-weight:700;font-size:var(--fs-xs);letter-spacing:2px;text-transform:uppercase;color:var(--green)}
.gc-price{font-family:var(--serif);font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--ink)}
.gc-mono{font-family:var(--mono);font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:1px}

/* ============================================================
   4. BUTTONS
   ============================================================ */
.gc-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--sans);font-weight:600;font-size:var(--fs-body);line-height:1;
  padding:13px 22px;border-radius:var(--r-md);border:1px solid transparent;
  transition:transform var(--transition),background var(--transition),border-color var(--transition),box-shadow var(--transition)}
.gc-btn--primary{background:var(--green);color:#fff;box-shadow:var(--shadow-cta)}
.gc-btn--primary:hover{background:var(--green-dark);color:#fff}
.gc-btn--primary:active{transform:scale(.97);box-shadow:var(--shadow-cta-lg)}
.gc-btn--ghost{background:#fff;color:var(--brand);border-color:var(--border-strong)}
.gc-btn--ghost:hover{border-color:var(--brand)}
.gc-btn--pill{border-radius:var(--r-pill)}
.gc-btn--block{width:100%}
.gc-btn[disabled]{opacity:.55;cursor:not-allowed}

/* Chips / selectors */
.gc-chip{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:var(--r-pill);
  background:#fff;border:1px solid var(--border-strong);color:var(--ink);font-weight:500;font-size:var(--fs-sm);
  transition:all var(--transition)}
.gc-chip[aria-pressed="true"],.gc-chip.is-active{background:var(--indigo);border-color:var(--indigo);color:#fff}
label.gc-chip{cursor:pointer}
.gc-chip input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}
.gc-fgroup__body--chips{display:flex;flex-wrap:wrap;gap:8px}
.gc-fgroup__body--chips .gc-chip.is-active{background:#1E1B50;border-color:#1E1B50;color:#fff}
.gc-catdd{position:relative}
.gc-catdd__btn{width:100%;height:44px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 12px;border:1.5px solid var(--border);border-radius:10px;background:#fff;cursor:pointer;font-size:13.5px;font-weight:600;color:var(--ink);font-family:var(--sans)}
.gc-catdd__btn[aria-expanded="true"]{border-color:var(--indigo)}
.gc-catdd__btn svg{color:var(--muted);flex:none;transition:transform .2s}
.gc-catdd__btn[aria-expanded="true"] svg{transform:rotate(180deg)}
.gc-catdd__panel{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:60;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 18px 40px rgba(30,27,80,.16);padding:6px;max-height:300px;overflow-y:auto}
.gc-catdd__opt{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border:0;background:transparent;border-radius:8px;cursor:pointer;text-align:left;font-size:13.5px;font-weight:500;color:var(--ink);font-family:var(--sans)}
.gc-catdd__opt:hover{background:var(--bg-warm)}
.gc-catdd__opt.is-active{background:var(--bg-warm);font-weight:700;color:var(--indigo)}
.gc-catdd__opt--promo{color:#D0282E;font-weight:700}
.gc-catdd__count{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.gc-catdd__opt.is-active .gc-catdd__count{color:var(--indigo)}
.gc-fgroup__count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-left:6px;border-radius:9px;background:var(--indigo);color:#fff;font-size:11px;font-weight:700;vertical-align:middle;font-family:var(--mono)}

/* ============================================================
   5. BADGES
   ============================================================ */
.gc-badge{display:inline-flex;align-items:center;gap:4px;font-family:var(--sans);font-weight:700;
  font-size:var(--fs-xs);letter-spacing:1.2px;text-transform:uppercase;padding:4px 9px;border-radius:var(--r-xs);line-height:1}
.gc-badge--bestseller{background:var(--indigo);color:var(--lime)}
.gc-badge--bestseller svg{color:var(--green)}
.gc-badge--new{background:var(--green);color:#fff}
.gc-badge--sale{background:var(--sale);color:#fff}
.gc-badge--fresh{background:var(--lime);color:var(--indigo)}

/* ============================================================
   6. PROMO BAR + HEADER  (wg projektu: pasek limonkowy, header granatowy)
   ============================================================ */

.gc-header{position:sticky;top:0;z-index:60;background:var(--indigo);color:var(--on-dark);box-shadow:0 1px 0 rgba(0,0,0,.15)}
.gc-header__row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:32px;
  padding:16px var(--gutter);max-width:var(--container);margin-inline:auto}
.gc-header__logo{display:flex;align-items:center;min-width:0}
.gc-header__logo a,.gc-header__logo .custom-logo-link{display:inline-flex;align-items:center}
.gc-header__logo img,.gc-header__logo .custom-logo{height:42px;width:auto;max-width:200px;object-fit:contain;display:block}
/* Inwersja na biel tylko dla wbudowanego logo zapasowego (wgrane logo zostaje bez zmian) */
.gc-header__logo--fallback img{filter:brightness(0) invert(1)}
.gc-header__actions{display:flex;align-items:center;gap:20px}

/* Akcje dwuliniowe (Doradca/Brandon, Witaj/Moje konto, Koszyk/kwota) */
.gc-action{display:inline-flex;align-items:center;gap:8px;color:#fff;text-decoration:none;background:none;border:0;cursor:pointer;padding:0}
.gc-action:hover{color:#fff}
.gc-action__lines{display:flex;flex-direction:column;line-height:1.2;text-align:left}
.gc-action__top{display:block;font-size:11px;opacity:.7}
.gc-action__main{display:block;font-size:13px;font-weight:600}
.gc-action__avatar{width:30px;height:30px;border-radius:50%;border:1.5px solid var(--lime);background:#fff;object-fit:cover;flex:none}
/* Barista AI — pigułka z tłem (wg projektu); wysokość = zielona pigułka koszyka (--hdr-pill-h) */
.gc-header__actions{--hdr-pill-h:38px}
.gc-action--brandon{height:var(--hdr-pill-h);background:rgba(228,236,191,.12);border:1px solid rgba(228,236,191,.3);padding:0 14px 0 3px;border-radius:var(--r-pill)}
.gc-action--brandon .gc-action__lines{line-height:1;gap:2px}
.gc-action--brandon:hover{background:rgba(228,236,191,.2)}
/* Konto — ikona + „Konto" pod spodem */
.gc-action--stack{flex-direction:column;gap:2px}
.gc-action__label{font-size:10px;font-weight:500;color:var(--lime)}
/* Koszyk — zielona pigułka */
.gc-action--cart{height:var(--hdr-pill-h);background:var(--green);color:#fff;padding:0 16px;border-radius:var(--r-pill);border:0;font-weight:600}
.gc-action--cart:hover{background:var(--green-dark);color:#fff}
.gc-action--cart .gc-action__main{font-size:13px;font-variant-numeric:tabular-nums}
.gc-action__cart-ic{position:relative;display:inline-flex}

/* Mini-koszyk (desktop, rozwijany po najechaniu) */
.gc-minicart,.gc-wishpop,.gc-acctpop{position:relative}
.gc-minicart__panel,.gc-wishpop__panel,.gc-acctpop__panel{position:absolute;top:calc(100% + 14px);right:0;width:360px;background:#fff;color:var(--text);
  border:1px solid var(--hairline);border-radius:var(--r-lg);box-shadow:var(--shadow-card-hover);padding:18px;
  opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s,transform .2s,visibility .2s;z-index:80}
.gc-minicart__panel::before,.gc-wishpop__panel::before,.gc-acctpop__panel::before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px}
.gc-minicart__arrow{position:absolute;top:-7px;right:26px;width:14px;height:14px;background:#fff;
  border-left:1px solid var(--hairline);border-top:1px solid var(--hairline);transform:rotate(45deg)}
.gc-minicart:hover .gc-minicart__panel,.gc-minicart:focus-within .gc-minicart__panel,
.gc-wishpop:hover .gc-wishpop__panel,.gc-wishpop:focus-within .gc-wishpop__panel,
.gc-acctpop:hover .gc-acctpop__panel,.gc-acctpop:focus-within .gc-acctpop__panel{opacity:1;visibility:visible;transform:none}
/* Popover ulubionych — reużywa wnętrza mini-koszyka */
.gc-wishpop__panel{right:-12px}
.gc-wishpop__panel .gc-minicart__arrow{right:26px}
.gc-wishpop__panel .gc-minicart__remove{background:none;border:0;cursor:pointer}
.gc-wishpop__empty-t{margin:10px 0 4px;font-size:14px;font-weight:600;color:var(--ink)}
.gc-wishpop__empty-s{margin:0 0 14px;color:var(--muted)}
.gc-wishpop__more{font-size:12px;color:var(--muted);margin:-4px 0 12px}
.gc-wishpop__actions{padding-top:14px;border-top:1px solid var(--hairline)}
.gc-wishpop__actions .gc-btn{padding:12px 14px;font-size:13px}
/* Popover konta — gość: mini logowanie, klient: skróty */
.gc-acctpop__panel{width:320px;right:-20px}
.gc-acctpop__panel .gc-minicart__arrow{right:35px}
.gc-acctpop__head{display:flex;flex-direction:column;gap:4px;margin-bottom:14px}
.gc-acctpop__title{font-family:var(--serif);font-weight:600;font-size:21px;line-height:1.15;color:var(--ink)}
.gc-acctpop__form{display:flex;flex-direction:column}
.gc-acctpop__form label{font-size:12px;font-weight:600;color:var(--ink);margin:0 0 6px}
.gc-acctpop__form input[type=text],.gc-acctpop__form input[type=password],.gc-acctpop__form input[type=email]{width:100%;height:42px;padding:0 14px;margin:0 0 12px;
  border:1.5px solid var(--border-strong);border-radius:var(--r-md);background:var(--bg-warm);color:var(--ink);font-size:14px;font-family:var(--sans);
  transition:border-color var(--transition),box-shadow var(--transition),background var(--transition)}
.gc-acctpop__form input:focus{outline:none;border-color:var(--green);background:#fff;box-shadow:0 0 0 3px rgba(100,188,81,.16)}
.gc-acctpop__row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 14px}
.gc-acctpop__form .gc-acctpop__remember{display:inline-flex;align-items:center;gap:7px;margin:0;font-size:12.5px;font-weight:500;color:var(--text);cursor:pointer}
.gc-acctpop__remember input{width:15px;height:15px;margin:0;accent-color:var(--green)}
.gc-acctpop__row a{font-size:12.5px;font-weight:600;color:var(--green-dark)}
.gc-acctpop__row a:hover{color:var(--brand)}
.gc-acctpop__form .gc-btn{height:44px;font-size:14px}
.gc-acctpop__switch{margin:12px 0 0;text-align:center;font-size:12.5px;color:var(--muted)}
.gc-acctpop__switch a{font-weight:600;color:var(--green-dark)}
.gc-acctpop__switch a:hover{color:var(--brand)}
.gc-acctpop__user{display:flex;align-items:center;gap:12px;padding-bottom:14px;margin-bottom:8px;border-bottom:1px solid var(--hairline)}
.gc-acctpop__avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--brand);color:var(--lime);font-weight:700;font-size:14px}
.gc-acctpop__who{display:flex;flex-direction:column;min-width:0;line-height:1.3}
.gc-acctpop__who strong{font-size:14px;color:var(--ink)}
.gc-acctpop__who span{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gc-acctpop__nav{display:flex;flex-direction:column}
.gc-acctpop__nav a,.gc-acctpop__logout{display:flex;align-items:center;gap:10px;padding:8px 8px;border-radius:var(--r-sm);font-size:13.5px;font-weight:500;color:var(--ink)}
.gc-acctpop__nav a svg,.gc-acctpop__logout svg{width:17px;height:17px;flex:none;color:var(--muted)}
.gc-acctpop__nav a:hover{background:var(--bg-warm);color:var(--brand)}
.gc-acctpop__nav a:hover svg{color:var(--green)}
.gc-acctpop__logout{margin-top:6px;padding-top:12px;border-top:1px solid var(--hairline);border-radius:0;color:var(--muted)}
.gc-acctpop__logout:hover{color:var(--sale)}
.gc-acctpop__logout:hover svg{color:var(--sale)}
.gc-minicart__empty{text-align:center;padding:14px 6px;color:var(--muted)}
.gc-minicart__empty svg{color:var(--muted-2)}
.gc-minicart__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.gc-minicart__items{max-height:300px;overflow-y:auto;display:flex;flex-direction:column;gap:12px;margin-bottom:14px}
.gc-minicart__item{display:grid;grid-template-columns:48px 1fr auto;gap:12px;align-items:center}
.gc-minicart__thumb img{width:48px;height:48px;border-radius:var(--r-sm);object-fit:cover;background:var(--bg-warm)}
.gc-minicart__info{min-width:0}
.gc-minicart__name{display:block;font-weight:600;font-size:13px;color:var(--ink);line-height:1.3;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gc-minicart__meta{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.gc-minicart__remove{color:var(--muted-2);display:inline-flex;padding:4px}
.gc-minicart__remove:hover{color:var(--sale)}
.gc-minicart__subtotal{display:flex;justify-content:space-between;align-items:baseline;padding-top:12px;
  border-top:1px solid var(--hairline);font-size:14px}
.gc-minicart__subtotal strong{font-family:var(--serif);font-size:18px;color:var(--ink)}
.gc-minicart__ship{margin-top:10px;font-size:12px;color:var(--brand)}
.gc-minicart__actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
.gc-minicart__actions .gc-btn{padding:11px 12px;font-size:13px}
.gc-iconbtn{position:relative;display:inline-flex;align-items:center;justify-content:center;
  width:42px;height:42px;border-radius:var(--r-pill);background:transparent;border:0;color:var(--on-dark)}
.gc-iconbtn:hover{color:var(--lime)}
.gc-iconbtn__count{position:absolute;top:-6px;right:-8px;min-width:17px;height:17px;padding:0 5px;
  display:grid;place-items:center;border-radius:var(--r-pill);background:var(--green);color:#fff;
  font-size:10px;font-weight:700;font-family:var(--mono);border:1.5px solid var(--indigo)}
.gc-iconbtn__count--oncart{background:#fff;color:var(--green-dark);border-color:#fff}

/* Nawigacja kategorii (osobny pasek, podkreślenie aktywnej na zielono + Top 10) */
.gc-catnav{background:var(--indigo);border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06)}
.gc-catnav__row{display:flex;align-items:center;gap:4px;max-width:var(--container);margin-inline:auto;padding:0 var(--gutter)}
.gc-catnav__row>ul{list-style:none;display:flex;align-items:center;gap:4px;margin:0;padding:0;flex:1}
.gc-catnav li{position:relative}
.gc-catnav__row>ul>li>a{position:relative;display:inline-flex;align-items:center;gap:6px;color:#fff;font-weight:500;font-size:14px;
  white-space:nowrap;padding:14px 18px;letter-spacing:.2px;transition:color .18s;text-decoration:none}
.gc-catnav__row>ul>li>a:hover{color:var(--lime)}
/* Indykator submenu (chevron) przy pozycjach z dziećmi */
.gc-catnav .menu-item-has-children>a::after,.gc-catnav .cat-parent>a::after,.gc-catnav .page_item_has_children>a::after{
  content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;
  transform:translateY(-2px) rotate(45deg);transition:transform .18s;opacity:.85}
.gc-catnav li:hover>a::after{transform:translateY(0) rotate(225deg)}
/* Aktywna pozycja — zielone podkreślenie */
.gc-catnav .current-menu-item>a::before,.gc-catnav .current_page_item>a::before{content:"";position:absolute;left:18px;right:18px;bottom:0;height:2px;background:var(--green);border-radius:1px}
/* Dropdown submenu (max 4 dzieci, biały panel) */
.gc-catnav .sub-menu,.gc-catnav .children{list-style:none;margin:0;padding:8px;position:absolute;top:100%;left:8px;min-width:240px;
  background:#fff;border:1px solid var(--hairline);border-radius:var(--r-lg);box-shadow:var(--shadow-card-hover);
  display:none;flex-direction:column;gap:2px;z-index:70}
.gc-catnav li:hover>.sub-menu,.gc-catnav li:hover>.children{display:flex;animation:gc-fade-slide .18s ease}
.gc-catnav .sub-menu li:nth-child(n+5),.gc-catnav .children li:nth-child(n+5){display:none}
.gc-catnav .sub-menu a,.gc-catnav .children a{display:block;padding:9px 12px;border-radius:var(--r-sm);color:var(--ink);
  font-size:14px;font-weight:500;white-space:nowrap}
.gc-catnav .sub-menu a:hover,.gc-catnav .children a:hover{background:var(--bg-warm);color:var(--brand)}
.gc-catnav__promo{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;padding:7px 13px;border-radius:999px;background:var(--lime);color:var(--indigo);font-weight:700;font-size:12px;white-space:nowrap;text-decoration:none;letter-spacing:.2px;transition:filter .18s}
.gc-catnav__promo:hover{filter:brightness(.95);color:var(--indigo)}

/* Mega menu (desktop) — panel pod paskiem kategorii: szyna zakładek + linki + karta promo.
   Włączany per pozycja w Wygląd → Menu (inc/mega-menu.php); zakładki przełącza main.js. */
.gc-catnav__row{position:relative}
.gc-catnav li.gc-has-mega{position:static}
.gc-catnav li.gc-has-mega:hover>a,.gc-catnav li.gc-has-mega.is-open>a{color:var(--lime)}
.gc-mega{position:absolute;top:100%;left:var(--gutter);right:var(--gutter);z-index:70;color:var(--text);font-weight:400;letter-spacing:0;text-align:left;
  opacity:0;visibility:hidden;transform:translateY(8px);pointer-events:none;
  transition:opacity .15s ease .06s,transform .15s ease .06s,visibility 0s linear .21s}
.gc-catnav li.gc-has-mega:hover>.gc-mega,.gc-catnav li.gc-has-mega:focus-within>.gc-mega,.gc-catnav li.gc-has-mega.is-open>.gc-mega{opacity:1;visibility:visible;transform:none;pointer-events:auto;
  transition:opacity .18s ease .08s,transform .18s ease .08s,visibility 0s linear .08s}
.gc-catnav li.gc-has-mega.is-closed>.gc-mega{opacity:0;visibility:hidden;pointer-events:none}
.gc-mega__card{display:grid;grid-template-columns:272px minmax(0,1fr);background:#fff;border:1px solid var(--hairline);border-top:0;
  border-radius:0 0 var(--r-xl) var(--r-xl);box-shadow:0 24px 60px rgba(30,27,80,.18);max-height:calc(100vh - 170px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}
.gc-mega--promo .gc-mega__card{grid-template-columns:272px minmax(0,1fr) 284px}
.gc-mega--single .gc-mega__card{grid-template-columns:minmax(0,1fr)}
.gc-mega--single.gc-mega--promo .gc-mega__card{grid-template-columns:minmax(0,1fr) 284px}
/* Szyna zakładek */
.gc-mega__rail{display:flex;flex-direction:column;gap:12px;padding:22px 14px 16px;background:var(--bg-warm);border-right:1px solid var(--border)}
.gc-mega__eyebrow{padding:0 12px;font-size:var(--fs-xs);font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--green)}
.gc-mega__tabs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.gc-mega__tab{width:100%;display:flex;align-items:center;gap:10px;padding:11px 12px;border:0;border-radius:var(--r-md);background:transparent;color:var(--ink);
  font-family:var(--sans);font-size:14px;font-weight:500;line-height:1.3;text-align:left;text-decoration:none;cursor:pointer;
  transition:background var(--transition),color var(--transition),box-shadow var(--transition)}
.gc-mega__tab-t{flex:1;min-width:0}
.gc-mega__tab-n{flex:none;min-width:24px;height:20px;padding:0 6px;display:grid;place-items:center;border-radius:10px;background:var(--bg-chip);color:var(--muted);
  font-family:var(--mono);font-size:11px;font-weight:600;transition:background var(--transition),color var(--transition)}
.gc-mega__tab svg{flex:none;color:var(--muted-2);transition:transform var(--transition),color var(--transition)}
.gc-mega__tab:hover{background:#fff;color:var(--brand)}
.gc-mega__tab.is-active{background:#fff;color:var(--indigo);font-weight:600;box-shadow:var(--shadow-soft),inset 3px 0 0 var(--green)}
.gc-mega__tab.is-active .gc-mega__tab-n{background:var(--indigo);color:#fff}
.gc-mega__tab.is-active svg{color:var(--green);transform:translateX(2px)}
.gc-mega__rail-all{margin-top:auto;display:inline-flex;align-items:center;gap:8px;padding:12px 12px 4px;border-top:1px solid var(--border);font-size:13px;font-weight:700;color:var(--brand)}
.gc-mega__rail-all svg{transition:transform var(--transition)}
.gc-mega__rail-all:hover{color:var(--green-dark)}
.gc-mega__rail-all:hover svg{transform:translateX(3px)}
/* Zakładki — wszystkie w jednej komórce siatki, więc panel nie skacze przy przełączaniu */
.gc-mega__panes{display:grid;min-width:0;padding:22px 26px 24px}
.gc-mega__pane{grid-area:1/1;min-width:0;visibility:hidden;opacity:0;transition:opacity .16s ease}
.gc-mega__pane.is-active{visibility:visible;opacity:1}
.gc-mega__head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:0 10px 12px;margin-bottom:10px;border-bottom:1px solid var(--hairline)}
.gc-mega__title{font-family:var(--serif);font-weight:600;font-size:20px;line-height:1.2;letter-spacing:-.2px;color:var(--brand)}
.gc-mega__all{flex:none;display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--green-dark);white-space:nowrap}
.gc-mega__all:hover{color:var(--brand)}
.gc-mega__list{list-style:none;margin:0;padding:0}
.gc-mega__list--cols,.gc-mega__groups{columns:3;column-gap:16px}
.gc-mega__list>li{break-inside:avoid}
.gc-mega__link{display:block;padding:8px 10px;border-radius:var(--r-sm);color:var(--ink);font-size:14px;font-weight:500;line-height:1.35;text-decoration:none;
  transition:background var(--transition),color var(--transition)}
a.gc-mega__link:hover{background:var(--bg-warm);color:var(--brand)}
.gc-mega__link.is-current{color:var(--indigo);font-weight:700}
.gc-mega__link.is-promo{color:#D0282E;font-weight:700}
/* Głębsze poziomy: podgrupa z nagłówkiem, dalej listy zagnieżdżone */
.gc-mega__sub{break-inside:avoid;margin-bottom:14px}
.gc-mega__subhead{display:block;padding:6px 10px;font-size:12px;font-weight:700;letter-spacing:1.2px;line-height:1.35;text-transform:uppercase;color:var(--muted)}
a.gc-mega__subhead:hover{color:var(--brand)}
.gc-mega__list--nested{margin:2px 0 6px 10px;padding-left:6px;border-left:1px solid var(--border)}
.gc-mega__list--nested .gc-mega__link{padding:6px 10px;font-size:13px;font-weight:400;color:var(--text)}
/* Karta promo */
.gc-mega__promo{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin:16px 16px 16px 0;padding:22px 20px 20px;border-radius:var(--r-lg);
  background:radial-gradient(420px 260px at 85% -10%,#3A317F,var(--indigo) 70%);color:#fff}
.gc-mega__promo-ic{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--lime);color:var(--indigo)}
.gc-mega__promo-title{font-family:var(--serif);font-weight:500;font-size:22px;line-height:1.15;letter-spacing:-.3px}
.gc-mega__promo-text{margin:0;font-size:13.5px;line-height:1.5;color:var(--on-dark-soft)}
.gc-mega__promo .gc-btn{margin-top:auto;padding:11px 18px;font-size:13px}
@media (max-width:1100px){
  .gc-mega__card,.gc-mega--promo .gc-mega__card{grid-template-columns:232px minmax(0,1fr)}
  .gc-mega--single .gc-mega__card,.gc-mega--single.gc-mega--promo .gc-mega__card{grid-template-columns:minmax(0,1fr)}
  .gc-mega__promo{display:none}
}
@media (max-width:900px){
  .gc-mega__list--cols,.gc-mega__groups{columns:2}
  .gc-mega__panes{padding:18px 16px 20px}
}
@media (prefers-reduced-motion:reduce){.gc-mega,.gc-mega__pane{transition:none}}

/* Hamburger (mobile) + drawer */
.gc-hamburger{display:none;align-items:center;justify-content:center;width:42px;height:42px;border:0;background:transparent;color:#fff;border-radius:var(--r-pill)}
.gc-drawer{position:fixed;inset:0;z-index:100010;visibility:hidden;pointer-events:none}
.gc-drawer.is-open{visibility:visible;pointer-events:auto}
.gc-drawer__overlay{position:absolute;inset:0;background:rgba(0,0,0,.5);opacity:0;transition:opacity .25s}
.gc-drawer.is-open .gc-drawer__overlay{opacity:1}
.gc-drawer__panel{position:absolute;top:0;right:0;bottom:0;width:80vw;max-width:420px;background:var(--indigo);color:#fff;
  transform:translateX(100%);transition:transform .3s cubic-bezier(.33,1,.68,1);padding:20px 22px calc(20px + env(safe-area-inset-bottom));display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain}
.gc-drawer.is-open .gc-drawer__panel{transform:none}
.gc-drawer__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
.gc-drawer__head img{height:30px;width:auto;max-width:160px;object-fit:contain}
.gc-drawer__close{display:grid;place-items:center;width:40px;height:40px;background:rgba(255,255,255,.08);border:0;border-radius:50%;color:var(--lime);font-size:24px;line-height:1;cursor:pointer;padding:0}
/* Menu: pozycje z podmenu = link + przycisk ＋/− w jednym wierszu, podmenu zwijane (max-height z JS) */
.gc-drawer__nav ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.gc-drawer__nav>ul>li,.gc-drawer__nav>.menu>li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;border-bottom:1px solid rgba(255,255,255,.12)}
.gc-drawer__nav a{display:block;font-family:var(--serif);font-size:19px;font-weight:500;color:var(--lime);text-decoration:none;padding:13px 0}
.gc-drawer__nav .current-menu-item>a,.gc-drawer__nav .current-cat>a{color:#fff}
.gc-drawer__nav .sub-menu,.gc-drawer__nav .children{grid-column:1/-1;overflow:hidden;max-height:0;transition:max-height .3s cubic-bezier(.33,1,.68,1);padding:0 0 0 14px;border-left:1px solid rgba(228,236,191,.25);margin-left:2px}
.gc-drawer__nav .sub-menu li:last-child,.gc-drawer__nav .children li:last-child{padding-bottom:10px}
.gc-drawer__nav .sub-menu a,.gc-drawer__nav .children a{font-family:var(--sans);font-size:15px;font-weight:500;color:var(--on-dark-soft);padding:8px 0}
.gc-drawer__nav .sub-menu a:hover,.gc-drawer__nav .children a:hover{color:#fff}
.gc-drawer__toggle{position:relative;width:40px;height:40px;margin-right:-8px;border:0;border-radius:50%;background:transparent;color:var(--lime);cursor:pointer}
.gc-drawer__toggle:hover,.gc-drawer__toggle:focus-visible{background:rgba(255,255,255,.08);outline:0}
.gc-drawer__toggle span::before,.gc-drawer__toggle span::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:2px;margin:-1px 0 0 -7px;border-radius:2px;background:currentColor;transition:transform .25s cubic-bezier(.33,1,.68,1)}
.gc-drawer__toggle span::after{transform:rotate(90deg)}
.has-sub.is-open>.gc-drawer__toggle span::after{transform:rotate(0deg)}
/* Głębsze poziomy (pozycje z mega menu rozwijają pełne drzewo): mniejszy przełącznik, drobniejsze linki */
.gc-drawer__nav .sub-menu li.has-sub{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}
.gc-drawer__nav .sub-menu .gc-drawer__toggle{width:32px;height:32px;margin-right:-4px}
.gc-drawer__nav .sub-menu .gc-drawer__toggle span::before,.gc-drawer__nav .sub-menu .gc-drawer__toggle span::after{width:11px;margin-left:-5.5px}
.gc-drawer__nav .sub-menu .sub-menu a{font-size:14px;font-weight:400;padding:7px 0}
/* Kontakt */
.gc-drawer__foot{margin-top:auto;padding-top:28px}
.gc-drawer__foot-label{font-size:11px;color:var(--kraft);letter-spacing:1.4px;margin-bottom:10px;text-transform:uppercase}
.gc-drawer__contact{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.gc-drawer__contact a,.gc-drawer__contact-row{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.4;color:var(--on-dark-soft);text-decoration:none}
.gc-drawer__contact a:hover{color:#fff}
.gc-drawer__contact svg{flex:none;margin-top:1px;color:var(--lime)}
.gc-drawer__social{display:flex;gap:10px;margin-top:16px}
.gc-drawer__social a{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.08);color:#fff}
.gc-drawer__social a:hover{background:rgba(255,255,255,.16)}

/* ============================================================
   7. LIVE SEARCH  (biała pigułka z zielonym przyciskiem „Szukaj" w środku)
   ============================================================ */
.gc-search{position:relative;justify-self:center;width:100%;max-width:520px}
.gc-search__field{display:flex;align-items:center;gap:8px;background:#fff;border-radius:var(--r-pill);
  padding:0 6px 0 18px;height:48px}
.gc-search__field>svg{color:var(--muted);flex:none}
.gc-search__input{flex:1;border:0;outline:0;font-size:14px;color:var(--ink);background:transparent;height:100%}
.gc-search__submit{background:var(--green);color:#fff;border:0;padding:9px 18px;border-radius:var(--r-pill);
  font-weight:600;font-size:13px;cursor:pointer;transition:background var(--transition);flex:none}
.gc-search__submit:hover{background:var(--green-dark)}
.gc-search__results{position:absolute;top:calc(100% + 10px);left:0;right:0;background:#fff;
  border-radius:var(--r-lg);box-shadow:var(--shadow-card-hover);border:1px solid var(--hairline);
  max-height:72vh;overflow:auto;z-index:80;display:none;padding:6px}
.gc-search__results.is-open{display:block}
/* Otwarta wyszukiwarka nad przyciemnieniem (ważne dla instancji w treści strony) */
.gc-search.is-active{z-index:70}
/* Wyszukiwarka w treści strony (404, wyniki) — ten sam komponent co w headerze, z ramką na jasnym tle */
.gc-search--page{justify-self:auto;max-width:600px;margin-top:18px}
.gc-search--page .gc-search__field{height:54px;border:1.5px solid var(--border-strong);box-shadow:0 12px 28px rgba(30,27,80,.06);transition:border-color var(--transition),box-shadow var(--transition)}
.gc-search--page .gc-search__field:focus-within{border-color:var(--brand);box-shadow:0 12px 32px rgba(30,27,80,.10)}
.gc-search--page .gc-search__input{font-size:15px}
.gc-search--page .gc-search__submit{padding:11px 22px;font-size:14px}
.gc-search__row{display:flex;gap:12px;align-items:center;padding:8px 10px;border-radius:10px;transition:background .12s}
.gc-search__row:hover,.gc-search__row.is-active{background:var(--bg-warm)}
.gc-search__link{display:flex;gap:12px;align-items:center;flex:1;min-width:0;text-decoration:none}
.gc-search__thumb{width:48px;height:48px;border-radius:var(--r-sm);object-fit:cover;background:var(--bg-chip);flex:none}
.gc-search__info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.gc-search__name{font-weight:600;color:var(--ink);font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gc-search__name mark{background:var(--lime);color:var(--indigo);padding:0;box-shadow:0 0 0 2px var(--lime);border-radius:2px;font-weight:700}
.gc-search__desc{color:var(--muted);font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gc-search__price{font-family:var(--serif);font-weight:600;color:var(--ink);white-space:nowrap;font-size:14px;flex:none}
.gc-search__price del{color:var(--muted-2);font-weight:500;font-size:12px;margin-right:4px}
.gc-search__add{flex:none;width:38px;height:38px;border-radius:var(--r-pill);background:var(--green);color:#fff;
  border:0;display:grid;place-items:center;cursor:pointer;box-shadow:var(--shadow-cta);transition:background .15s}
.gc-search__add:hover{background:var(--green-dark)}
.gc-search__add--view{background:#fff;color:var(--brand);border:1px solid var(--border-strong);box-shadow:none}
.gc-search__add--view:hover{background:var(--bg-warm);color:var(--brand)}
.gc-search__empty{padding:22px;text-align:center;color:var(--muted);font-size:var(--fs-sm)}
.gc-search__more{display:block;text-align:center;padding:12px;margin-top:4px;color:var(--brand);font-weight:600;
  font-size:13px;border-top:1px solid var(--hairline);text-decoration:none}
.gc-search__more:hover{background:var(--bg-warm);border-radius:8px}

/* ============================================================
   8. PRODUCT CARD
   ============================================================ */
.gc-grid{display:grid;gap:24px}
.gc-grid--4{grid-template-columns:repeat(4,1fr)}
.gc-grid--5{grid-template-columns:repeat(5,1fr)}
.gc-card{position:relative;background:#fff;border:1px solid var(--hairline);border-radius:var(--r-lg);
  box-shadow:var(--shadow-card);overflow:hidden;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition);display:flex;flex-direction:column}
.gc-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card-hover);border-color:var(--border-strong)}
.gc-card__media{position:relative;aspect-ratio:1/1.02;background:#fff;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:28px}
.gc-card__media img{max-width:74%;max-height:84%;width:auto;height:auto;object-fit:contain;transition:transform 380ms cubic-bezier(.4,0,.2,1)}
.gc-card:hover .gc-card__media img{transform:scale(1.04)}
.gc-card__badges{position:absolute;top:10px;left:10px;display:flex;flex-direction:column;gap:6px}
.gc-card__heart{position:absolute;top:10px;right:10px;width:36px;height:36px;border-radius:var(--r-pill);
  background:rgba(255,255,255,.92);border:0;display:grid;place-items:center;color:var(--muted);backdrop-filter:blur(6px)}
.gc-card__heart.is-active{color:var(--heart)}
.gc-card__heart.is-active svg{fill:var(--heart)}
.gc-card__body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:8px;flex:1}
.gc-card__eyebrow{min-width:0;font-size:var(--fs-xs);line-height:1.5;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);font-weight:700;
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.gc-card__title{font-family:var(--serif);font-weight:600;font-size:18px;line-height:1.22;letter-spacing:-.2px;color:var(--ink);margin:0}
.gc-card__title a{color:inherit}
.gc-card__title a:hover{color:var(--brand)}
.gc-card__notes{margin:0;font-size:var(--fs-sm);line-height:1.45;color:var(--muted);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.gc-card__foot{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:auto}
.gc-card__foot>div{min-width:0}
.gc-card__foot .gc-btn{flex:none}
.gc-card__price{font-family:var(--serif);font-weight:600;font-size:20px;color:var(--ink);line-height:1.3}
.gc-card__price .amount{display:inline-block;white-space:nowrap}
.gc-card__now{white-space:nowrap}
.gc-card__was{color:var(--muted-2);font-size:13px;font-weight:500;text-decoration:line-through;white-space:nowrap;margin-left:3px}
.gc-card__price del{color:var(--muted-2);font-size:13px;font-weight:500;white-space:nowrap}
.gc-card__price ins{text-decoration:none;font-weight:600}
.gc-rating{display:inline-flex;align-items:center;gap:4px;color:var(--green);font-size:var(--fs-sm)}
.gc-rating .gc-mono{color:var(--muted)}

/* ============================================================
   9. HERO
   ============================================================ */
.gc-hero{position:relative;min-height:560px;display:flex;align-items:center;color:#fff;overflow:hidden;background:var(--indigo)}
.gc-hero__bg{position:absolute;inset:0;object-fit:cover;width:100%;height:100%}
.gc-hero__bg::after,.gc-hero__overlay{content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,var(--indigo) 8%,rgba(30,27,80,.65) 42%,transparent 78%)}
.gc-hero__inner{position:relative;max-width:var(--container);margin-inline:auto;padding:64px var(--gutter);width:100%}
.gc-hero__content{max-width:620px;display:flex;flex-direction:column;gap:20px}
.gc-hero__eyebrow{display:inline-flex;align-self:flex-start;gap:8px;padding:7px 14px;border-radius:var(--r-pill);
  background:rgba(255,255,255,.12);backdrop-filter:blur(8px);color:var(--lime);font-size:var(--fs-xs);
  font-weight:700;letter-spacing:2px;text-transform:uppercase}

/* ============================================================
   10. SECTIONS / CATEGORY TILES / BREW METHODS / TRUST
   ============================================================ */
.gc-section{padding:64px 0}
.gc-section--warm{background:var(--bg-warm)}
.gc-section__head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:32px}
.gc-section__head>.gc-h2{margin:0}
.gc-section__head--center{align-items:center}
.gc-section__head>.gc-btn{flex:none}
.gc-tile{position:relative;border-radius:var(--r-lg);overflow:hidden;min-height:180px;display:flex;
  flex-direction:column;align-items:flex-start;justify-content:space-between;text-align:left;
  padding:20px 18px;color:#fff;background:var(--brown);text-decoration:none;
  transition:transform .2s,box-shadow .2s}
.gc-tile:hover{color:#fff;transform:translateY(-3px);box-shadow:var(--shadow-soft)}
/* Glyph wg projektu: DIcon.Coffee 90px, wystaje za prawy dolny róg, obrót −12°. */
.gc-tile__glyph{position:absolute;right:-10px;bottom:-10px;width:90px;opacity:.13;line-height:0;color:#fff;transform:rotate(-12deg);transition:opacity .2s}
.gc-tile__glyph svg{width:90px;height:90px;display:block}
.gc-tile:hover .gc-tile__glyph{opacity:.2}
.gc-tile__label{position:relative;font-family:var(--serif);font-weight:500;font-size:22px;line-height:1.15;letter-spacing:-.3px}
.gc-brew{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;padding:18px;
  background:#fff;border:1px solid var(--hairline);border-radius:var(--r-lg)}
.gc-brew svg{color:var(--brand)}
.gc-trust{background:var(--trust-bg);border-top:1px solid var(--border);padding:40px 0}
.gc-trust__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}
.gc-trust__card{display:flex;gap:16px;align-items:flex-start}
.gc-trust__card+.gc-trust__card{padding-left:24px;border-left:1px solid rgba(51,43,112,.10)}
.gc-trust__ic{flex:none;margin-top:2px;color:var(--green);display:inline-flex}
.gc-trust__t{font-family:var(--serif);font-size:18px;font-weight:600;color:var(--ink);letter-spacing:-.2px;margin-bottom:4px}
.gc-trust__s{font-family:var(--sans);font-size:13px;color:var(--muted);line-height:1.5}

/* ============================================================
   11. PRODUCT PAGE
   ============================================================ */
.gc-product{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:48px;padding-block:40px}
.gc-gallery__main{border-radius:var(--r-lg);overflow:hidden;background:var(--bg-paper);border:1px solid var(--hairline)}
.gc-gallery__thumbs{display:flex;gap:10px;margin-top:12px}
.gc-gallery__thumbs img{width:72px;height:72px;border-radius:var(--r-sm);object-fit:cover;border:1px solid var(--border);cursor:pointer}
.gc-summary{display:flex;flex-direction:column;gap:18px}
.gc-summary__title{font-family:var(--serif);font-weight:500;font-size:var(--fs-h1);letter-spacing:-1px;color:var(--brand);margin:0}
.gc-summary__price{font-family:var(--serif);font-weight:600;font-size:32px;color:var(--ink)}
.gc-field-label{font-size:var(--fs-xs);font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.gc-roastbar{height:8px;border-radius:var(--r-pill);background:var(--kraft-light);overflow:hidden}
.gc-roastbar__fill{height:100%;background:linear-gradient(90deg,var(--kraft),var(--brown))}
.gc-spec{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.gc-spec__item{background:var(--bg-warm);border-radius:var(--r-md);padding:12px;text-align:center}
.gc-spec__val{font-family:var(--mono);font-weight:600;color:var(--ink)}
.gc-accordion{border-top:1px solid var(--hairline)}
.gc-accordion__head{display:flex;justify-content:space-between;align-items:center;width:100%;background:none;border:0;
  padding:16px 0;font-family:var(--serif);font-weight:600;font-size:var(--fs-h3);color:var(--brand);text-align:left}
.gc-accordion__body{padding-bottom:16px;color:var(--text)}
.gc-qty{display:inline-flex;align-items:center;border:1px solid var(--border-strong);border-radius:var(--r-md);overflow:hidden}
.gc-qty button{width:40px;height:44px;border:0;background:#fff;color:var(--ink);font-size:18px}
.gc-qty input{width:48px;height:44px;border:0;text-align:center;font-family:var(--mono);font-weight:600}
.gc-atc-sticky{position:fixed;bottom:0;left:0;right:0;z-index:50;background:#fff;border-top:1px solid var(--border);
  box-shadow:var(--shadow-drawer);padding:12px var(--gutter);display:none}

/* ============================================================
   12. CART
   ============================================================ */
.gc-cart{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:32px;padding-block:40px}
.gc-cart__item{display:grid;grid-template-columns:96px 1fr auto;gap:16px;padding:18px 0;border-bottom:1px solid var(--hairline)}
.gc-cart__item img{width:96px;height:96px;border-radius:var(--r-md);object-fit:cover;background:var(--bg-warm)}
.gc-summary-card{background:var(--summary-bg);border:1px solid var(--hairline);border-radius:var(--r-lg);
  padding:24px;position:sticky;top:96px;display:flex;flex-direction:column;gap:14px}
.gc-summary-card__row{display:flex;justify-content:space-between;font-size:var(--fs-body)}
.gc-summary-card__total{display:flex;justify-content:space-between;font-family:var(--serif);font-weight:600;font-size:22px;
  color:var(--ink);padding-top:14px;border-top:1px solid var(--border)}
.gc-freeship{background:var(--trust-bg);border-radius:var(--r-md);padding:12px 14px;font-size:var(--fs-sm);color:var(--brand)}
.gc-freeship__bar{height:6px;border-radius:var(--r-pill);background:var(--kraft-light);margin-top:8px;overflow:hidden}
.gc-freeship__fill{height:100%;background:var(--green);transition:width var(--transition)}

/* ============================================================
   13. FOOTER
   ============================================================ */
.gc-footer{background:var(--indigo);color:rgba(255,255,255,.65);padding:56px 0 32px}
.gc-footer a{color:rgba(255,255,255,.65);text-decoration:none}
.gc-footer a:hover{color:var(--lime)}
/* Newsletter */
.gc-newsletter{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;
  padding:28px 32px;border-radius:16px;background:rgba(228,236,191,.08);border:1px solid rgba(228,236,191,.18);margin-bottom:48px}
.gc-newsletter__copy{flex:1;min-width:260px}
.gc-newsletter__title{font-family:var(--serif);font-size:26px;font-weight:600;color:#fff;margin:0 0 6px;letter-spacing:-.01em}
.gc-newsletter__sub{font-size:13.5px;color:rgba(255,255,255,.7);margin:0;line-height:1.5}
.gc-newsletter__sub strong{color:var(--lime);font-weight:700}
.gc-newsletter__form{display:flex;gap:8px;min-width:380px;flex:1;max-width:460px}
.gc-newsletter__form input{flex:1;height:48px;border-radius:24px;border:none;padding:0 20px;font-size:14px;color:var(--ink);background:#fff;font-family:var(--sans);outline:none}
.gc-newsletter__form .gc-btn{height:48px;padding:0 26px;border-radius:24px;font-size:14px;font-weight:700;white-space:nowrap}
/* Formularz z integracją (inc/newsletter.php): wiersz e-mail + przycisk (.gc-newsletter__form) w opakowaniu
   .gc-nl razem ze zgodą i komunikatem */
.gc-nl{flex:1;min-width:380px;max-width:460px;display:flex;flex-direction:column;gap:10px}
.gc-nl .gc-newsletter__form{min-width:0;max-width:none;flex:none}
.gc-nl__consent{display:flex;align-items:flex-start;gap:9px;font-size:12px;line-height:1.5;color:rgba(255,255,255,.72);cursor:pointer}
.gc-nl__consent input{flex:none;width:16px;height:16px;margin:1px 0 0;accent-color:var(--green);cursor:pointer}
.gc-nl__consent a{color:var(--lime);text-decoration:underline;text-underline-offset:2px}
.gc-nl__hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}
.gc-nl__msg{margin:0;padding:9px 14px;border-radius:var(--r-md);font-size:13px;font-weight:600;line-height:1.4}
.gc-nl__msg.is-ok{background:rgba(100,188,81,.18);color:#D5F0CC}
.gc-nl__msg.is-error{background:rgba(200,68,44,.22);color:#FFD9D0}
@media (max-width:760px){.gc-nl{flex:none;width:100%;min-width:0;max-width:none}}
/* Zgody dodatkowe w sekcji płatności (newsletter, opinie) — checkbox jak przy regulaminie, drobny tekst */
.woocommerce-checkout.gc-checkout .gc-nl-consent{margin:12px 0 0;padding:0}
.woocommerce-checkout.gc-checkout .gc-nl-consent label.checkbox{display:flex;flex-direction:row;align-items:flex-start;gap:10px;margin:0;font-size:13px;font-weight:400;line-height:1.5;color:var(--text);cursor:pointer}
.woocommerce-checkout.gc-checkout .gc-nl-consent input[type=checkbox]{flex:none;margin:0}
.woocommerce-checkout.gc-checkout .gc-nl-consent a{color:var(--brand);text-decoration:underline;text-underline-offset:2px}
.gc-checkout .gc-nl-consent .optional{display:none}
/* Siatka 5 kolumn */
.gc-footer__grid{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:32px;margin-bottom:40px}
.gc-footer__logo-link{display:inline-block;margin-bottom:16px;line-height:0}
.gc-footer__logo{height:42px;width:auto;max-width:200px;object-fit:contain;display:block}
.gc-logo--fallback{filter:brightness(0) invert(1)}
.gc-footer__about{font-size:13px;line-height:1.6;color:rgba(255,255,255,.6);margin:0 0 16px;max-width:320px}
.gc-footer__social{display:flex;gap:10px}
.gc-footer__social a{width:36px;height:36px;border-radius:18px;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;color:#fff}
.gc-footer__social a:hover{background:rgba(255,255,255,.16);color:#fff}
/* Trusted Shops */
.gc-footer__ts{display:flex;align-items:center;gap:13px;background:var(--indigo);border:1px solid rgba(255,255,255,.28);border-radius:14px;padding:12px 16px;max-width:300px;margin-top:20px;color:#fff;transition:transform .18s,border-color .18s}
a.gc-footer__ts:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.6)}
.gc-footer__ts-badge{flex:none;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;display:flex;align-items:center;justify-content:center}
.gc-footer__ts-top{font-size:11.5px;font-weight:600;color:#fff;line-height:1.1;display:block}
.gc-footer__ts-rate{display:flex;align-items:center;gap:6px;margin:2px 0}
.gc-footer__ts .gc-footer__ts-stars{color:#FFB400;--gc-star-off:rgba(255,255,255,.28)}
.gc-footer__ts-rate strong{font-size:15px;font-weight:800;color:#fff;font-variant-numeric:tabular-nums}
.gc-footer__ts-sub{font-size:11.5px;color:rgba(255,255,255,.85)}
.gc-footer__ts-sub strong{color:#fff;font-weight:700}
.gc-footer__ts-count{white-space:nowrap}
/* Telefon: stopka ma dwie wąskie kolumny — karta układa się w wiersze (ikona + tytuł, ocena, etykieta, liczba opinii) */
@media(max-width:760px){.gc-footer__ts{display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px 8px;padding:12px 14px}.gc-footer__ts-body{display:contents}.gc-footer__ts-badge{width:28px;height:28px}.gc-footer__ts-badge svg{width:16px;height:16px}.gc-footer__ts-rate,.gc-footer__ts-sub{grid-column:1/-1;margin:0}.gc-footer__ts-sep{display:none}.gc-footer__ts-count{display:block;margin-top:2px}}
/* Kolumny linków */
.gc-footer__col h4{font-family:var(--serif);font-weight:600;font-size:15px;letter-spacing:.01em;text-transform:none;color:#fff;margin:0 0 16px}
.gc-footer__col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px;font-size:13px}
.gc-footer__hl{color:var(--lime)!important;font-weight:700}
/* Kontakt */
.gc-footer__contact{font-size:13px;line-height:1.65}
.gc-footer__contact-line,.gc-footer__contact-email{color:rgba(255,255,255,.7);display:block}
.gc-footer__contact-email{color:rgba(255,255,255,.85)}
.gc-footer__contact-h{color:#fff;font-weight:700;margin-top:14px}
.gc-footer__addr{margin-top:8px;color:rgba(255,255,255,.7)}
.gc-footer__map{display:inline-flex;align-items:center;gap:5px;color:var(--lime)!important;font-weight:600;margin-top:14px}
/* Pasek dolny */
.gc-footer__bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;
  padding-top:24px;border-top:1px solid rgba(255,255,255,.1);font-size:12px;color:rgba(255,255,255,.5)}
.gc-footer__pay{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.gc-footer__pay-label{margin-right:4px}
.gc-footer__pay-badge{padding:5px 10px;border-radius:4px;background:rgba(255,255,255,.08);font-size:11px;font-weight:600}
/* Wyniki wyszukiwania */
.gc-search-page{padding-top:24px;padding-bottom:56px}
.gc-searchhead{margin-bottom:28px}
.gc-searchform{display:flex;align-items:center;gap:10px;background:#fff;border:1.5px solid var(--border);border-radius:999px;padding:6px 6px 6px 16px;max-width:640px;margin-top:18px}
.gc-searchform>svg{color:var(--muted);flex:none}
.gc-searchform input{flex:1;border:none;outline:none;background:transparent;font-family:var(--sans);font-size:14px;color:var(--ink);min-width:0}
.gc-searchform .gc-btn{border-radius:999px;padding:10px 20px;flex:none}
.gc-searchres{display:flex;flex-direction:column;gap:12px;margin-bottom:32px}
.gc-searchres__item{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid var(--border);border-radius:14px;padding:14px 18px;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s}
.gc-searchres__item:hover{border-color:var(--border-strong);box-shadow:0 10px 28px rgba(30,27,80,.08);transform:translateY(-1px)}
.gc-searchres__thumb{width:64px;height:64px;flex:none;border-radius:10px;background:var(--bg-warm);display:flex;align-items:center;justify-content:center;overflow:hidden;color:var(--muted)}
.gc-searchres__thumb img{width:100%;height:100%;object-fit:contain}
.gc-searchres__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.gc-searchres__meta{display:flex;align-items:center;gap:10px}
.gc-searchres__chip{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);background:var(--bg-chip);padding:3px 9px;border-radius:999px}
.gc-searchres__price{font-size:13px;font-weight:700;color:var(--ink)}
.gc-searchres__title{font-family:var(--serif);font-size:17px;font-weight:600;color:var(--ink);line-height:1.25}
.gc-searchres__excerpt{font-size:13px;color:var(--muted);line-height:1.5;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.gc-searchres__arrow{flex:none;color:var(--muted)}
.gc-searchres__item:hover .gc-searchres__arrow{color:var(--accent)}

/* ============================================================
   14. QUICK RETURN (konto klienta)
   ============================================================ */
.gc-returns__order{border:1px solid var(--hairline);border-radius:var(--r-lg);padding:18px;margin-bottom:16px}
.gc-returns__status{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--r-pill);
  font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:1px}
.gc-returns__status--new{background:var(--bg-chip);color:var(--muted)}
.gc-returns__status--accepted{background:var(--trust-bg);color:var(--green-dark)}
.gc-returns__status--refunded{background:var(--lime);color:var(--indigo)}

/* ============================================================
   15. TOASTS
   ============================================================ */
.gc-toast{position:fixed;right:24px;bottom:24px;z-index:200;background:var(--indigo);color:#fff;
  padding:16px 22px;border-radius:var(--r-lg);box-shadow:var(--shadow-soft);display:flex;gap:12px;align-items:center;
  font-size:16px;font-weight:600;max-width:380px;transform:translateY(20px);opacity:0;transition:all 300ms cubic-bezier(.4,0,.2,1)}
.gc-toast.is-visible{transform:translateY(0);opacity:1}
.gc-toast__ic{display:grid;place-items:center;width:34px;height:34px;border-radius:var(--r-pill);flex:none}
.gc-toast--success .gc-toast__ic{background:var(--green);color:#fff}
.gc-toast--error .gc-toast__ic{background:var(--sale);color:#fff}
.gc-toast--info .gc-toast__ic{background:rgba(255,255,255,.16);color:#fff}
.gc-toast__msg{line-height:1.3}
@media(max-width:760px){.gc-toast{left:16px;right:16px;bottom:16px;max-width:none;justify-content:center}}

/* Animacja koszyka — powiększenie + potrząśnięcie */
@keyframes gc-cart-pop{0%{transform:scale(1) rotate(0)}18%{transform:scale(1.2) rotate(-5deg)}
  36%{transform:scale(1.14) rotate(5deg)}54%{transform:scale(1.16) rotate(-4deg)}
  72%{transform:scale(1.08) rotate(3deg)}100%{transform:scale(1) rotate(0)}}
.gc-action--cart.gc-cart-pop{animation:gc-cart-pop .7s cubic-bezier(.36,.07,.19,.97);box-shadow:0 0 0 4px rgba(100,188,81,.25)}


/* ============================================================
   16. KEYFRAMES
   ============================================================ */
@keyframes gc-cart-bounce{0%,100%{transform:scale(1)}30%{transform:scale(1.25)}60%{transform:scale(.9)}}
.gc-cart-bounce{animation:gc-cart-bounce .45s cubic-bezier(.4,0,.2,1)}
@keyframes gc-fade-slide{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes gc-slide-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}

/* ============================================================
   16b. HERO SLIDER (repeatable, sterowany metaboxem strony głównej)
   ============================================================ */
.gc-slider{position:relative;overflow:hidden;height:540px;background:var(--indigo);transition:background .6s ease}
.gc-slider__slides{position:absolute;inset:0;z-index:0}
.gc-slider__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%;opacity:0;transition:opacity .7s ease}
.gc-slider__img.is-active{opacity:1}
.gc-slider__grad{position:absolute;inset:0;z-index:1;transition:background .6s ease}
.gc-slider__inner{position:relative;z-index:2;max-width:var(--container);margin-inline:auto;padding:0 var(--gutter);height:100%;display:flex;align-items:center}
.gc-slide{max-width:560px;display:none}
.gc-slide.is-active{display:block;animation:gc-fade-slide .55s ease}
.gc-slide__eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.12);backdrop-filter:blur(8px);color:#fff;font-family:var(--sans);font-weight:700;font-size:11px;letter-spacing:2px;padding:7px 14px;border-radius:var(--r-pill);margin-bottom:24px;border:1px solid rgba(255,255,255,.18);text-transform:uppercase}
.gc-slide__eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--green)}
.gc-slide__title{font-family:var(--serif);font-weight:500;font-size:64px;line-height:1.02;color:#fff;margin:0;letter-spacing:-1.5px;text-wrap:balance}
.gc-slide__sub{font-family:var(--sans);font-size:18px;color:rgba(255,255,255,.85);margin:20px 0 36px;line-height:1.55;max-width:480px}
.gc-slide__actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.gc-slide__link{display:inline-flex;align-items:center;gap:8px;color:#fff;font-weight:500;font-size:14px;text-decoration:none;transition:color .2s}
.gc-slide__link:hover,.gc-slide__link:focus-visible{color:#bdbccb}
.gc-slide__link svg{flex:none;transition:transform .2s cubic-bezier(.4,0,.2,1)}
.gc-slide__link:hover svg,.gc-slide__link:focus-visible svg{transform:translateX(5px)}
.gc-slider__paging{position:absolute;bottom:28px;right:max(var(--gutter),calc((100% - var(--container)) / 2 + var(--gutter)));z-index:3;display:flex;align-items:center;gap:10px}
.gc-slider__count{font-family:var(--mono);font-size:13px;color:rgba(255,255,255,.7);letter-spacing:1px;margin-right:12px;font-variant-numeric:tabular-nums}
.gc-slider__dot{width:10px;height:4px;border-radius:2px;background:rgba(255,255,255,.4);border:0;padding:0;cursor:pointer;transition:all .35s}
.gc-slider__dot.is-active{width:32px;background:var(--green)}

/* ============================================================
   16c. KARTA PRODUKTU — pełna (rating + „od" + Wybierz) wg widoku
   ============================================================ */
.gc-card__rating{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:12px;color:var(--muted)}
.gc-card__rating .gc-stars{display:inline-flex;gap:1px;color:var(--green)}
.gc-card__rating-val{font-weight:600;color:var(--ink);margin-left:4px}
.gc-rating{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:var(--muted)}
.gc-rating .gc-stars{display:inline-flex;gap:1px;color:var(--green)}
.gc-rating-val{font-weight:600;color:var(--ink)}
.gc-rating-count{color:var(--muted)}
/* Gwiazdki: jeden element z maską, wypełnienie ułamkowe przez --gc-fill (gc_stars_html() w inc/reviews.php) */
.gc-starbar{--gc-star:14px;--gc-fill:100%;--gc-star-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m12 2 3 6.5 7 .9-5 4.9 1.2 7L12 18l-6.4 3.3L6.8 14l-5-4.9 7-.9z'/%3E%3C/svg%3E");display:inline-block;flex:none;vertical-align:middle;width:calc(var(--gc-star)*5);height:var(--gc-star);color:var(--green);background:linear-gradient(90deg,currentColor var(--gc-fill),var(--gc-star-off,#DDD6C8) var(--gc-fill));-webkit-mask:var(--gc-star-mask) left center/var(--gc-star) var(--gc-star) repeat-x;mask:var(--gc-star-mask) left center/var(--gc-star) var(--gc-star) repeat-x}
.gc-card__price-from{font-size:11px;color:var(--muted);margin-bottom:2px}
.gc-card__foot .gc-btn--primary{border-radius:var(--r-pill);padding:11px 16px;font-size:13px}
.gc-section__eyebrow{font-family:var(--sans);font-size:12px;font-weight:700;color:var(--green);letter-spacing:2px;text-transform:uppercase;margin-bottom:10px;display:inline-flex;align-items:center;gap:8px}
.gc-tile__cat{position:relative;font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:1.6px;opacity:.7;text-transform:uppercase}
.gc-tile__go{position:relative;display:inline-flex;align-items:center;gap:6px;font-family:var(--sans);font-size:12px;font-weight:500;color:var(--lime)}
.gc-tile__go svg{flex:none;transition:transform .2s cubic-bezier(.4,0,.2,1)}
.gc-tile:hover .gc-tile__go svg{transform:translateX(5px)}

/* Link tekstowy ze strzałką (np. „Zobacz wszystkie kategorie") — delikatny hover + przesuw strzałki */
.gc-link-arrow{display:inline-flex;align-items:center;gap:8px;color:var(--accent);font-weight:500;transition:opacity .18s}
.gc-link-arrow:hover{color:var(--accent);opacity:.65}
.gc-link-arrow svg{flex:none;transition:transform .2s cubic-bezier(.4,0,.2,1)}
.gc-link-arrow:hover svg{transform:translateX(5px)}

/* ============================================================
   16d. STRONA PRODUKTU — gallery, selektory, specs, akordeon
   ============================================================ */
.gc-utility{background:var(--lime);color:var(--brand);font-size:12px;font-weight:500;border-bottom:1px solid var(--kraft-light)}
.gc-utility__row{max-width:var(--container);margin-inline:auto;padding:8px var(--gutter);display:flex;justify-content:space-between;align-items:center;gap:18px}
.gc-utility__group{display:flex;gap:18px;align-items:center;min-width:0}
/* Lewa strona ustępuje prawej: informacja, która się nie mieści, zawija się do ukrytego wiersza i znika w całości —
   nie nachodzi na kontakt (prawa strona ma stałą szerokość). Wysokość = jedna linia pozycji. */
.gc-utility__group--info{flex:1 1 auto;flex-wrap:wrap;max-height:18px;overflow:hidden}
.gc-utility__group--contact{flex:none}
.gc-utility__item{display:inline-flex;align-items:center;gap:6px;line-height:18px;white-space:nowrap;color:var(--brand);text-decoration:none}
.gc-utility__item svg{flex:none}
a.gc-utility__item:hover{color:var(--indigo);text-decoration:underline;text-underline-offset:2px}
.gc-breadcrumb{max-width:var(--container);margin-inline:auto;padding:18px 32px 14px;display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted)}
.gc-breadcrumb a{color:var(--muted)}
.gc-breadcrumb .sep{opacity:.5}
.gc-breadcrumb .current{color:var(--ink);font-weight:500}
.woocommerce-breadcrumb{font-size:12.5px;color:var(--muted);padding:0 0 16px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.woocommerce-breadcrumb a{color:var(--muted)}
.woocommerce-breadcrumb a:hover{color:var(--brand)}
.woocommerce-breadcrumb .gc-crumb-sep{display:inline-flex;align-items:center;color:var(--muted-2)}
.gc-pdp-main>.woocommerce-breadcrumb{gap:8px}

.gc-pdp{max-width:var(--container);margin-inline:auto;padding:0 32px 64px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:48px;align-items:start}
.gc-pdp__gallery{display:flex;gap:16px}
.gc-pdp__thumbs{display:flex;flex-direction:column;gap:10px;width:80px;flex:none}
.gc-pdp__thumb{width:80px;height:80px;border-radius:10px;background:var(--bg-paper);border:1px solid var(--border);overflow:hidden;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}
.gc-pdp__thumb.is-active{border:2px solid var(--accent)}
.gc-pdp__thumb img{width:100%;height:100%;object-fit:contain}
.gc-pdp__thumb--hidden{display:none}
.gc-pdp__thumb--more{flex-direction:column;gap:4px;border:1px dashed var(--border-strong);background:var(--bg-paper);color:var(--muted);font-size:11px;font-weight:600}
.gc-pdp__thumb--more:hover{border-color:var(--accent);color:var(--accent)}
.gc-pdp__thumb-plus{width:28px;height:28px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center}
.gc-pdp__stagecol{flex:1;min-width:0;display:flex;flex-direction:column}
.gc-pdp__stage{position:relative}
.gc-pdp__range{margin-top:8px}
.gc-pdp__main{width:100%;aspect-ratio:1;background:#fff;border-radius:16px;position:relative;overflow:hidden;border:1px solid var(--border);display:flex;align-items:center;justify-content:center}
.gc-pdp__main img{width:85%;height:85%;object-fit:contain;transition:transform .3s}
.gc-pdp__badges{position:absolute;top:20px;left:20px;z-index:3;display:flex;flex-direction:column;gap:8px}
.gc-pdp__heart{position:absolute;top:20px;right:20px;z-index:3;width:44px;height:44px;border-radius:22px;background:#fff;border:1px solid var(--border);display:grid;place-items:center;color:var(--muted);box-shadow:0 2px 8px rgba(0,0,0,.06)}
.gc-pdp__heart.is-active{color:var(--heart)}.gc-pdp__heart.is-active svg{fill:var(--heart)}
.gc-pdp__trust{margin-top:16px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.gc-pdp__trust-item{padding:12px 14px;border-radius:10px;background:#fff;border:1px solid var(--border);display:flex;align-items:center;gap:10px}
.gc-pdp__trust-item svg{color:var(--green);flex:none}
.gc-pdp__trust-t{font-size:12px;font-weight:600;color:var(--ink);line-height:1.2}
.gc-pdp__trust-s{font-size:11px;color:var(--muted)}
.gc-pdp__main{cursor:zoom-in}
.gc-pdp__zoom{position:absolute;bottom:20px;right:20px;z-index:3;display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:500;color:var(--muted);background:rgba(255,255,255,.9);padding:6px 10px;border-radius:999px;border:none;cursor:pointer}
.gc-pdp__zoom:hover{background:#fff}
.gc-lightbox{position:fixed;inset:0;z-index:100020;background:rgba(26,24,32,.88);display:flex;align-items:center;justify-content:center;padding:24px;animation:gcLbFade .16s ease;-webkit-user-select:none;user-select:none}
.gc-lightbox__img{max-width:90vw;max-height:90vh;object-fit:contain;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.gc-lightbox__close{position:absolute;top:18px;right:22px;width:44px;height:44px;border:none;border-radius:22px;background:rgba(255,255,255,.12);color:#fff;font-size:26px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.gc-lightbox__close:hover{background:rgba(255,255,255,.22)}
.gc-lightbox__nav{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border:none;border-radius:26px;background:rgba(255,255,255,.12);color:#fff;font-size:30px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.gc-lightbox__nav:hover{background:rgba(255,255,255,.24)}
.gc-lightbox__nav--prev{left:20px}
.gc-lightbox__nav--next{right:20px}
.gc-lightbox__count{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);color:rgba(255,255,255,.85);font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;background:rgba(0,0,0,.3);padding:5px 12px;border-radius:999px}
@keyframes gcLbFade{from{opacity:0}to{opacity:1}}
@media(max-width:600px){.gc-lightbox__nav{width:42px;height:42px;font-size:24px}.gc-lightbox__nav--prev{left:8px}.gc-lightbox__nav--next{right:8px}}

.gc-pdp__cat{font-size:11px;font-weight:700;color:var(--green);letter-spacing:1.5px;text-transform:uppercase}
.gc-pdp__head{display:flex;align-items:center;gap:14px;margin-bottom:14px;flex-wrap:wrap}
.gc-pdp__title{font-family:var(--serif);font-size:42px;line-height:1.05;font-weight:500;color:var(--accent);margin:0 0 14px;letter-spacing:-.02em;text-wrap:balance}
.gc-pdp__title em{font-style:italic;color:var(--brown)}
.gc-pdp__desc{font-size:15.5px;line-height:1.55;color:var(--text);margin:0 0 22px;max-width:540px}
.gc-taste{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:26px}
.gc-taste__chip{display:inline-flex;align-items:center;gap:7px;background:var(--bg-chip);color:var(--brown);font-size:13px;font-weight:600;padding:7px 13px;border-radius:var(--r-pill)}
.gc-pdp__price-box{padding:20px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-bottom:22px}
.gc-pdp__price{font-family:var(--serif);font-size:44px;font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1}
.gc-pdp__stock{font-size:11px;font-weight:700;color:var(--green-dark);background:#E8F0E0;padding:4px 9px;border-radius:4px;letter-spacing:.06em;text-transform:uppercase}
.gc-selector-label{font-size:12px;font-weight:700;color:var(--ink);letter-spacing:.06em;text-transform:uppercase;display:block}
.gc-variants{display:grid;gap:10px;margin-bottom:22px}
.gc-variants--2{grid-template-columns:1fr 1fr}
.gc-variants--3{grid-template-columns:repeat(3,1fr)}
.gc-variant{text-align:left;padding:14px 16px;border-radius:12px;background:#fff;color:var(--ink);border:2px solid var(--border);cursor:pointer;transition:all .18s;font-family:inherit;position:relative}
.gc-variant.is-active{background:var(--indigo);color:#fff;border-color:var(--indigo)}
.gc-variant__name{font-family:var(--serif);font-size:18px;font-weight:600}
.gc-grindbtn{padding:11px 8px;border-radius:8px;background:#fff;color:var(--ink);border:1.5px solid var(--border);font-size:13px;font-weight:600;cursor:pointer;transition:all .18s}
.gc-grindbtn.is-active{background:var(--indigo);color:#fff;border-color:var(--indigo)}
.gc-pdp__atc-row{display:flex;gap:12px;margin-bottom:22px}
.gc-pdp__qty{display:flex;align-items:center;border:1.5px solid var(--border);border-radius:12px;background:#fff;overflow:hidden}
.gc-pdp__qty button{width:44px;height:56px;border:0;background:none;color:var(--ink);display:grid;place-items:center}
.gc-pdp__qty input{width:44px;height:56px;border:0;text-align:center;font-family:var(--serif);font-size:18px;font-weight:600;font-variant-numeric:tabular-nums}
.gc-pdp__atc{flex:1;height:56px;background:var(--green);color:#fff;border:0;border-radius:12px;font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:var(--shadow-cta);cursor:pointer;transition:all .18s}
.gc-pdp__atc:hover{background:var(--green-dark)}
.gc-pdp__specs{margin-top:22px;padding:18px 20px;background:var(--bg-chip);border-radius:12px;display:grid;grid-template-columns:1fr 1fr;gap:12px 24px}
.gc-pdp__spec-k{font-size:11px;font-weight:700;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:2px}
.gc-pdp__spec-v{font-size:13.5px;color:var(--ink);font-weight:500}
.gc-progress{height:6px;background:var(--kraft-light);border-radius:3px;overflow:hidden;margin-top:6px}
.gc-progress__fill{height:100%;background:linear-gradient(90deg,var(--green),var(--green-dark));transition:width .3s}

/* PDP — natywna galeria WooCommerce w naszej oprawie */
.gc-pdp__gallery-wrap{position:sticky;top:24px}
.gc-pdp__stage-native{position:relative;overflow:hidden}
/* Usuń float/szerokość WooCommerce — galeria pełnej szerokości, pasek zaufania pod spodem */
.gc-pdp .woocommerce-product-gallery{width:100%!important;float:none!important;margin:0!important}
.gc-pdp__trust{clear:both}
.gc-pdp__stage-native .woocommerce-product-gallery{border-radius:16px;overflow:hidden;border:1px solid var(--border);background:#fff}
.gc-pdp__stage-native .woocommerce-product-gallery__image img{border-radius:16px}
.gc-pdp__stage-native .flex-control-thumbs{display:flex;gap:10px;margin:12px 0 0;padding:0;list-style:none}
.gc-pdp__stage-native .flex-control-thumbs li{width:72px}
.gc-pdp__stage-native .flex-control-thumbs img{border-radius:8px;border:1px solid var(--border);cursor:pointer}
.gc-pdp__heart-wrap{position:absolute;top:20px;right:20px;z-index:3}
.gc-pdp__heart-wrap .gc-pdp__heart{position:static}

/* PDP — natywny formularz add-to-cart ostylowany jak w widoku */
.gc-pdp__form .quantity{display:inline-flex;align-items:center;border:1.5px solid var(--border);border-radius:12px;background:#fff;overflow:hidden;height:56px;margin-right:12px;vertical-align:top}
.gc-pdp__form .quantity input.qty{width:54px;height:54px;border:0;text-align:center;font-family:var(--serif);font-size:18px;font-weight:600}
.gc-pdp__form button.single_add_to_cart_button{height:56px;min-width:240px;background:var(--green)!important;color:#fff!important;border:0!important;border-radius:12px!important;font-size:16px;font-weight:700;letter-spacing:.01em;box-shadow:var(--shadow-cta);cursor:pointer;transition:background .18s}
.gc-pdp__form button.single_add_to_cart_button:hover{background:var(--green-dark)!important}
.gc-pdp__form .variations{width:100%;border-collapse:collapse;margin-bottom:16px}
.gc-pdp__form .variations th{text-align:left;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);padding:8px 0;vertical-align:middle}
.gc-pdp__form .variations td{padding:6px 0 6px 12px}
.gc-pdp__form .variations select{width:100%;height:46px;padding:0 14px;border:1.5px solid var(--border);border-radius:10px;font-size:14px;background:#fff}
.gc-pdp__form .woocommerce-variation-price{margin-bottom:12px}
.gc-pdp__form .reset_variations{font-size:12px;color:var(--muted)}

/* PDP — zakładki/akordeony WooCommerce ostylowane */
.woocommerce-tabs .wc-tabs{display:flex;gap:8px;list-style:none;margin:0 0 20px;padding:0;border-bottom:1px solid var(--hairline);flex-wrap:wrap}
.woocommerce-tabs .wc-tabs li{margin:0}
.woocommerce-tabs .wc-tabs li a{display:inline-block;padding:12px 18px;font-weight:600;color:var(--muted);border-bottom:2px solid transparent}
.woocommerce-tabs .wc-tabs li.active a{color:var(--brand);border-bottom-color:var(--green)}
.woocommerce-tabs .panel{font-size:15px;line-height:1.6;color:var(--text)}
.woocommerce-tabs .panel h2{font-family:var(--serif);color:var(--brand)}

/* Siatka produktów (powiązane, cross-sell, archiwum sklepu) — naprawa „rozsypania" */
.woocommerce ul.products,ul.products{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;list-style:none;margin:0;padding:0}
ul.products::before,ul.products::after{display:none!important}
ul.products li.product,ul.products li{margin:0!important;width:auto!important;float:none!important;clear:none!important}
/* Wyrównanie kafelków w wierszu bez sztywnych wysokości (subgrid): zdjęcie, kraj, tytuł, nuty, ocena i stopka
   leżą na wspólnych torach wiersza siatki — tytuł na 2 linie przesuwa nuty we wszystkich kartach wiersza, a gdy
   wszystkie tytuły mają 1 linię, nie zostaje pusta przestrzeń. Odstęp między wierszami kart robi margines karty
   (row-gap siatki = 0, bo pusty tor — np. wiersz bez ocen — zostawiałby dziurę o wysokości odstępu). */
@supports (grid-template-rows:subgrid) and selector(:has(*)){
  ul.products:has(>.gc-card),.gc-grid:has(>.gc-card){--gc-card-gap:24px;row-gap:0;margin-bottom:calc(var(--gc-card-mb,0px) - var(--gc-card-gap))}
  .gc-article ul.products:has(>.gc-card){--gc-card-gap:20px;--gc-card-mb:32px;row-gap:0;margin-bottom:calc(var(--gc-card-mb) - var(--gc-card-gap))}
  ul.products>.gc-card,.gc-grid>.gc-card{display:grid;grid-template-rows:subgrid;grid-row:span 6;row-gap:0;margin-bottom:var(--gc-card-gap)}
  ul.products>.gc-card>.gc-card__media,.gc-grid>.gc-card>.gc-card__media{grid-row:1}
  ul.products>.gc-card>.gc-card__body,.gc-grid>.gc-card>.gc-card__body{display:grid;grid-template-rows:subgrid;grid-row:2/-1;gap:0}
  ul.products>.gc-card>.gc-card__body>*,.gc-grid>.gc-card>.gc-card__body>*{min-width:0}
  ul.products>.gc-card>.gc-card__body>.gc-card__metarow,.gc-grid>.gc-card>.gc-card__body>.gc-card__metarow{grid-row:1;margin-bottom:8px}
  ul.products>.gc-card>.gc-card__body>.gc-card__title,.gc-grid>.gc-card>.gc-card__body>.gc-card__title{grid-row:2}
  ul.products>.gc-card>.gc-card__body>.gc-card__notes,.gc-grid>.gc-card>.gc-card__body>.gc-card__notes{grid-row:3;margin-top:8px}
  ul.products>.gc-card>.gc-card__body>.gc-card__rating,.gc-grid>.gc-card>.gc-card__body>.gc-card__rating{grid-row:4;margin-top:14px}
  ul.products>.gc-card>.gc-card__body>.gc-card__foot,.gc-grid>.gc-card>.gc-card__body>.gc-card__foot{grid-row:5;margin-top:8px;align-self:end}
}

/* Shim WPBakery (inc/blocks.php) — wiersze i kolumny starych treści. Szerokość kolumny z atrybutu width
   trafia do --gc-vc-w (ułamek); wzór flex-basis uwzględnia odstępy, więc 1/3+1/3+1/3 czy 1/4+3/4 dają pełny wiersz. */
.gc-vc-row{--gc-vc-gap:24px;display:flex;flex-wrap:wrap;gap:var(--gc-vc-gap);margin-bottom:var(--gc-vc-gap)}
.gc-vc-row>p:empty,.gc-vc-row>br{display:none}
.gc-vc-col{flex:0 0 calc(var(--gc-vc-w,1)*100% - var(--gc-vc-gap)*(1 - var(--gc-vc-w,1)));min-width:0}
.gc-vc-col>:first-child{margin-top:0}
.gc-vc-col>:last-child{margin-bottom:0}
.gc-vc-image{margin:0 0 14px}
.gc-vc-image img{display:block;max-width:100%;height:auto}
.gc-vc-image--center img{margin-inline:auto}
.gc-vc-image--right img{margin-left:auto}
.gc-vc-heading{margin:32px 0 20px;text-align:center}
.gc-vc-heading--left{text-align:left}
.gc-vc-heading--right{text-align:right}
.gc-vc-heading__title{margin:0}
.gc-vc-heading__sub{margin-top:8px}
.gc-vc-raw img{max-width:100%;height:auto}
/* Produkty wstawione shortcodem w wąską kolumnę: siatka dopasowana do szerokości kolumny (karta nie kurczy się do 1/4) */
.gc-vc-row .gc-vc-col--sm ul.products{grid-template-columns:1fr}
.gc-vc-row .gc-vc-col--md ul.products{grid-template-columns:repeat(2,1fr)}
.gc-vc-row .gc-vc-col--lg ul.products{grid-template-columns:repeat(3,1fr)}
/* Karta-placeholder w miejscu produktu, którego nie ma w sprzedaży — miejsce w zestawieniu zostaje zajęte;
   kolumna rozciąga kartę do wysokości sąsiednich kart produktów */
.gc-vc-col--ph{display:flex;flex-direction:column}
.gc-card-ph{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:260px;padding:32px 24px;text-align:center;
  border:1.5px dashed var(--border-strong);border-radius:var(--r-lg);background:var(--bg-warm)}
.gc-card-ph__ic{display:grid;place-items:center;width:60px;height:60px;margin-bottom:4px;border-radius:50%;background:#fff;border:1px solid var(--border);color:var(--kraft)}
.gc-card-ph__title{font-family:var(--serif);font-weight:600;font-size:20px;line-height:1.2;letter-spacing:-.2px;color:var(--brand);text-wrap:balance}
.gc-card-ph__text{max-width:26ch;font-size:var(--fs-sm);line-height:1.5;color:var(--muted);text-wrap:balance}
.gc-card-ph .gc-btn{margin-top:8px;padding:11px 18px;font-size:13px}
@media (max-width:760px){
  .gc-vc-col{flex-basis:100%}
  .gc-vc-col:empty{display:none}
  .gc-vc-row .gc-vc-col--lg ul.products{grid-template-columns:repeat(2,1fr)}
}
.gc-pdp__related,.gc-pdp__tabs{padding-bottom:8px}
.gc-pdp__related .related.products>h2,.gc-pdp__related>h2,.up-sells>h2,.cross-sells>h2{
  font-family:var(--serif);font-weight:600;font-size:28px;color:var(--brand);margin:0 0 24px;letter-spacing:-.4px}
.gc-pdp__related .related.products{margin:0}

/* ============================================================
   16f. QUICK-VIEW (box „Wybierz" — gramatura + mielenie)
   ============================================================ */
.gc-qv-overlay{position:fixed;inset:0;z-index:100010;background:rgba(15,13,56,.5);
  backdrop-filter:blur(6px) saturate(120%);-webkit-backdrop-filter:blur(6px) saturate(120%);
  display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;transition:opacity .2s}
.gc-qv-stack{position:relative;width:min(920px,100%)}
.gc-qv-overlay.is-open{opacity:1}
.gc-qv{position:relative;display:grid;grid-template-columns:minmax(0,0.85fr) minmax(0,1fr);
  width:100%;max-height:min(90vh,calc(100vh - 180px));overflow:auto;background:#fff;border-radius:var(--r-xl);
  box-shadow:0 30px 80px rgba(15,13,56,.35);transform:translateY(12px) scale(.98);transition:transform .22s cubic-bezier(.33,1,.68,1)}
.gc-qv-overlay.is-open .gc-qv{transform:none}
.gc-qv__close{position:absolute;top:18px;right:18px;width:38px;height:38px;border-radius:var(--r-pill);
  border:0;background:var(--bg-chip);color:var(--muted);font-size:22px;line-height:1;cursor:pointer;z-index:2}
.gc-qv__close:hover{background:var(--border)}
.gc-qv__media{position:relative;background:var(--bg-paper);display:flex;align-items:center;justify-content:center;padding:32px}
.gc-qv__media img{max-width:100%;max-height:380px;object-fit:contain;border-radius:var(--r-md);transition:opacity .17s ease}
.gc-qv__media img.is-fading{opacity:0}
/* Zdjęcie wariantu w trakcie wczytywania — delikatne migotanie nad obrazem */
.gc-qv__media::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .2s;
  background:linear-gradient(90deg,rgba(255,255,255,0) 25%,rgba(255,255,255,.55) 45%,rgba(255,255,255,0) 65%);background-size:300% 100%}
.gc-qv__media.is-swapping::after{opacity:1;animation:gc-shimmer 1.1s ease infinite}
/* Pasek darmowej dostawy w quick view */
.gc-qv__free{margin-top:16px;padding:12px 14px;background:var(--bg-paper);border:1px solid var(--hairline);border-radius:var(--r-md)}
.gc-qv__free-row{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:13px;color:var(--text)}
.gc-qv__free-row strong{color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}
.gc-qv__free-goal{flex:none;font-size:12px;color:var(--muted)}
.gc-qv__free .gc-progress{margin-top:8px}
.gc-qv__free .gc-progress__fill{transition:width .45s cubic-bezier(.33,1,.68,1)}
.gc-qv__free.is-free{background:#F1F7EC;border-color:#D5E9C9}
.gc-qv__badge{position:absolute;top:20px;left:20px;font-family:var(--serif);font-size:13px}
.gc-qv__body{padding:32px 32px 28px;display:flex;flex-direction:column;gap:0}
.gc-qv__origin{font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.gc-qv__title{font-family:var(--serif);font-weight:600;font-size:30px;line-height:1.1;letter-spacing:-.4px;color:var(--ink);margin:0 0 12px}
.gc-qv__rating{margin-bottom:16px}
.gc-qv__info{display:flex;gap:24px;flex-wrap:wrap;background:var(--bg-chip);border-radius:var(--r-md);padding:12px 16px;font-size:13px;color:var(--text);margin-bottom:20px}
.gc-qv__info strong{color:var(--ink)}
.gc-qv__group{margin-bottom:18px}
.gc-qv__label{font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.gc-qv__weights{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.gc-qv__weight{text-align:left;padding:12px 16px;border-radius:var(--r-md);background:var(--bg-chip);
  border:1px solid var(--border);color:var(--ink);cursor:pointer;transition:all .15s}
.gc-qv__weight.is-active{background:var(--indigo);border-color:var(--indigo);color:#fff}
.gc-qv__weight-name{display:block;font-weight:600;font-size:15px}
.gc-qv__weight-price{display:block;font-size:12px;opacity:.85;margin-top:2px}
.gc-qv__grinds{display:flex;flex-wrap:wrap;gap:8px}
.gc-qv__grinds .gc-grindbtn{border-radius:var(--r-pill);padding:8px 14px;background:var(--bg-chip);border:1px solid var(--border)}
.gc-qv__grinds .gc-grindbtn.is-active{background:var(--indigo);border-color:var(--indigo);color:#fff}
.gc-qv__buy{display:flex;gap:12px;align-items:stretch;margin-top:6px}
.gc-qv__buy .gc-qtystepper{height:auto;border-radius:var(--r-pill);padding:4px}
.gc-qv__buy .gc-qtystepper button{width:40px;height:44px}
.gc-qv__buy .gc-qtystepper input{height:44px;width:36px}
.gc-qv__add{flex:1;display:flex;align-items:center;justify-content:space-between;gap:12px;
  background:var(--green);color:#fff;border:0;border-radius:var(--r-pill);padding:0 24px;height:56px;
  font-weight:700;font-size:15px;cursor:pointer;box-shadow:var(--shadow-cta-lg);transition:background .15s}
.gc-qv__add:hover{background:var(--green-dark)}
.gc-qv__add [data-qv-price]{font-family:var(--serif);font-weight:700}
.gc-qv__add.is-loading{cursor:progress;opacity:.85}
.gc-qv__add.is-added{justify-content:center;background:var(--green-dark)}
.gc-qv__added{display:inline-flex;align-items:center;gap:10px}
.gc-qv__added svg{flex:none}
.gc-qv__added span{white-space:nowrap}
.gc-qv__added-s{display:none}

/* Pigułka „brakuje do darmowej dostawy" pod quick-view (GSAP; bez GSAP — przejście CSS) */
.gc-qv-ship{position:absolute;top:calc(100% + 16px);left:0;right:0;margin-inline:auto;width:max-content;
  display:flex;align-items:center;gap:12px;max-width:calc(100vw - 32px);padding:8px 20px 8px 8px;
  background:#fff;color:var(--ink);border-radius:var(--r-pill);box-shadow:0 18px 44px rgba(15,13,56,.3);
  white-space:nowrap;overflow:hidden;text-decoration:none;opacity:0;transform:translateY(16px);transition:opacity .3s,transform .35s cubic-bezier(.33,1,.68,1)}
.gc-qv-ship.is-visible{opacity:1;transform:none}
.gc-qv-ship.is-gsap{transition:none}
.gc-qv-ship:hover{color:var(--ink)}
.gc-qv-ship__ic{width:40px;height:40px;border-radius:50%;flex:none;display:grid;place-items:center;background:var(--lime);color:var(--brand)}
.gc-qv-ship.is-free .gc-qv-ship__ic{background:var(--green);color:#fff}
.gc-qv-ship__body{display:flex;flex-direction:column;gap:6px;min-width:0}
.gc-qv-ship__text{font-size:13.5px;line-height:1.2;color:var(--text)}
.gc-qv-ship__text strong{color:var(--brand);font-weight:700;font-variant-numeric:tabular-nums}
.gc-qv-ship.is-free .gc-qv-ship__text strong{color:var(--green-dark)}
.gc-qv-ship__bar{display:block;height:5px;min-width:220px;border-radius:var(--r-pill);background:var(--bg-chip);overflow:hidden}
.gc-qv-ship__fill{display:block;height:100%;width:0;border-radius:inherit;background:var(--green)}
.gc-qv-ship__cta{flex:none;margin-left:6px;padding-left:14px;border-left:1px solid var(--hairline);font-size:13px;font-weight:700;color:var(--green-dark)}
.gc-qv-ship__cta span{display:inline-block;transition:transform .2s cubic-bezier(.4,0,.2,1)}
.gc-qv-ship:hover .gc-qv-ship__cta span{transform:translateX(4px)}
.gc-qv__full{display:inline-block;margin-top:16px;text-align:center;color:var(--brand);font-weight:600;font-size:14px}

/* ============================================================
   16g. SEKCJA „O NASZEJ PALARNI I KAWIE" (rozwijana, long-form)
   ============================================================ */
/* Wstęp strony głównej „Sklep z kawą online" (inc/home-intro.php): wyśrodkowany nagłówek + widoczny wstęp,
   pod przyciskiem „Pokaż więcej" długi tekst w dwóch kolumnach. Rozwijanie bez mierzenia wysokości:
   grid-template-rows 0fr → 1fr; zwinięta część jest niewidoczna także dla klawiatury (visibility). */
.gc-intro{padding:8px 0 28px}
.gc-intro__head{max-width:860px;margin-inline:auto;text-align:center}
.gc-intro__title{margin:0}
.gc-intro__subtitle{margin:12px 0 0}
.gc-intro__lead{margin-top:22px;font-size:15.5px;line-height:1.7;color:var(--text)}
.gc-intro__lead p{margin:0 0 14px}
.gc-intro__lead>:last-child{margin-bottom:0}
.gc-intro__lead h2,.gc-intro__lead h3,.gc-intro__lead h4{font-family:var(--serif);font-weight:600;font-size:19px;line-height:1.3;letter-spacing:-.2px;color:var(--brand);margin:18px 0 0}
.gc-intro__lead h2 strong,.gc-intro__lead h3 strong,.gc-intro__lead h4 strong{font-weight:inherit}
.gc-intro__lead a,.gc-intro__content a{color:var(--brand);text-decoration:underline;text-underline-offset:2px}
.gc-intro__lead a:hover,.gc-intro__content a:hover{color:var(--green-dark)}
.gc-intro__toggle{margin-top:24px}
.gc-intro__toggle svg{transition:transform var(--transition)}
.gc-intro.is-open .gc-intro__toggle svg{transform:rotate(180deg)}
.gc-intro__more{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .4s ease,visibility 0s linear .4s}
.gc-intro.is-open .gc-intro__more{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows .4s ease,visibility 0s}
.gc-intro__more-in{min-height:0;overflow:hidden}
.gc-intro__content{margin-top:32px;padding-top:32px;border-top:1px solid var(--hairline);columns:2;column-gap:56px}
.gc-intro__content h2,.gc-intro__content h3,.gc-intro__content h4{font-family:var(--serif);font-weight:600;font-size:19px;line-height:1.3;letter-spacing:-.2px;color:var(--ink);margin:0 0 10px;break-after:avoid}
.gc-intro__content h2{font-size:24px;color:var(--brand)}
.gc-intro__content h2 strong,.gc-intro__content h3 strong,.gc-intro__content h4 strong{font-weight:inherit}
.gc-intro__content p{font-size:14.5px;line-height:1.7;color:var(--text);margin:0 0 20px}
.gc-intro__content>:last-child{margin-bottom:0}
@media (max-width:760px){
  .gc-intro__lead{font-size:15px;text-align:left}
  .gc-intro__content{columns:1;margin-top:24px;padding-top:24px}
}
@media (prefers-reduced-motion:reduce){.gc-intro__more{transition:none}}
.gc-about{background:var(--bg-warm);border-top:1px solid var(--border)}
.gc-about .gc-container{padding-block:22px}
.gc-about__toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;
  background:none;border:0;padding:8px 0;cursor:pointer;text-align:left}
.gc-about__title{font-family:var(--serif);font-size:18px;font-weight:500;color:var(--brown);letter-spacing:-.1px}
.gc-about__more{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:13px;white-space:nowrap}
.gc-about__chev{display:inline-flex;transition:transform .2s}
.gc-about--open .gc-about__chev{transform:rotate(180deg)}
.gc-about__body{max-height:0;overflow:hidden;transition:max-height .35s ease}
.gc-about--open .gc-about__body{max-height:1600px}
.gc-about__content{padding:20px 0 8px;columns:2;column-gap:48px}
.gc-about__content h2,.gc-about__content h3{font-family:var(--serif);font-size:18px;font-weight:600;color:var(--ink);
  margin:0 0 10px;break-after:avoid}
.gc-about__content p{font-size:13.5px;line-height:1.65;color:var(--brown);margin:0 0 16px;break-inside:avoid}
.gc-about__content a{color:var(--brand);text-decoration:underline}
@media(max-width:760px){.gc-about__content{columns:1}}

/* ============================================================
   16e. KOSZYK — stepper, tabela, promo, dostawa, summary, badge
   ============================================================ */
.gc-cart-page{max-width:var(--container);margin-inline:auto;padding:0 32px}
.gc-cart-head{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;padding-block:24px 18px}
.gc-cart-head__title{margin:0;font-family:var(--serif);font-size:44px;font-weight:500;color:var(--brand);letter-spacing:-.5px;line-height:1}
.gc-stepper{display:flex;align-items:center;flex:none}
.gc-stepper__step{display:flex;align-items:center;gap:10px;flex:none}
.gc-stepper__num{width:30px;height:30px;flex:none;border-radius:50%;background:#fff;border:1.5px solid var(--border-strong);color:var(--muted-2);display:grid;place-items:center;font-size:13px;font-weight:600;line-height:1}
.gc-stepper__num svg{display:block}
.gc-stepper__step.is-active .gc-stepper__num,.gc-stepper__step.is-done .gc-stepper__num{background:var(--indigo);border:0;color:#fff}
.gc-stepper__lbl{font-size:13px;font-weight:500;color:var(--muted);white-space:nowrap}
.gc-stepper__step.is-active .gc-stepper__lbl{font-weight:700;color:var(--indigo)}
.gc-stepper__sub{font-size:11px;color:var(--muted-2)}
.gc-stepper__line{width:56px;height:1.5px;background:#E5DFD2;margin:0 16px}
.gc-cart-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:32px;align-items:start;padding-top:28px}
.gc-cart-col{display:flex;flex-direction:column;gap:20px}
.gc-cartcard{background:#fff;border-radius:14px;border:1px solid var(--hairline);overflow:hidden}
.gc-cartcard__head{display:grid;grid-template-columns:1fr 160px 140px 40px;padding:14px 24px;background:var(--bg-table);border-bottom:1px solid var(--hairline);font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:1.2px}
.gc-cartrow{display:grid;grid-template-columns:1fr 160px 140px 40px;gap:16px;padding:20px 24px;border-bottom:1px solid var(--hairline);align-items:center}
.gc-cartrow:last-child{border-bottom:0}
.gc-cartrow__prod{display:flex;gap:18px;align-items:center;min-width:0}
.gc-cartrow__prod img{width:84px;height:96px;border-radius:10px;object-fit:cover;border:1px solid var(--border);flex:none;background:var(--bg-warm)}
.gc-cartrow__name{font-family:var(--serif);font-size:18px;font-weight:600;color:var(--brand);line-height:1.2;display:block;margin-bottom:6px}
.gc-cartrow__variants{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.gc-cartrow__vchip{font-size:11px;color:var(--brand);font-weight:500;padding:3px 9px;border-radius:var(--r-pill);background:#F2EDDF;border:1px solid var(--border);text-transform:uppercase;letter-spacing:.6px}
.gc-cartrow__unit{font-size:12.5px;color:var(--muted)}
.gc-cartrow__sub{text-align:right;font-family:var(--serif);font-size:20px;font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}
.gc-qtystepper{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:var(--r-pill);background:#fff;height:38px;padding:2px}
.gc-qtystepper button{width:32px;height:32px;border:0;background:none;color:var(--brand);font-size:18px;font-weight:600;cursor:pointer;border-radius:var(--r-pill)}
.gc-qtystepper input{width:40px;border:0;text-align:center;font-size:14px;font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums;background:none;-moz-appearance:textfield;appearance:textfield}
.gc-qtystepper input::-webkit-outer-spin-button,.gc-qtystepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.gc-cartcard__foot{padding:16px 24px;border-top:1px solid var(--hairline);display:flex;justify-content:space-between;align-items:center;background:#FCFAF4;font-size:12px;color:var(--muted)}
.gc-promo-card{background:#fff;border:1px solid var(--hairline);border-radius:14px;padding:18px 22px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.gc-promo-card__field{display:flex;gap:8px;flex:none;margin-left:auto}
.gc-promo-card input{width:200px;height:44px;padding:0 16px;border:1px solid var(--border);border-radius:10px;font-size:14px;letter-spacing:1px;font-family:var(--mono)}
.gc-coupon-msg{flex-basis:100%;margin-top:2px;display:flex;align-items:center;gap:9px;font-size:13px;font-weight:500;
  padding:11px 14px;border-radius:var(--r-md);animation:gc-fade-slide .18s ease}
.gc-coupon-msg::before{flex:none;width:20px;height:20px;border-radius:var(--r-pill);display:grid;place-items:center;
  font-size:12px;font-weight:800;color:#fff}
.gc-coupon-msg[hidden]{display:none}
.gc-coupon-msg--success{background:#F1F7EC;border:1px solid #CCE3BC;color:var(--green-dark)}
.gc-coupon-msg--success::before{content:"✓";background:var(--green)}
.gc-coupon-msg--error{background:#FBEDEA;border:1px solid #F0C8C0;color:var(--sale)}
.gc-coupon-msg--error::before{content:"!";background:var(--sale)}
.gc-delivery{background:#fff;border:1px solid var(--hairline);border-radius:14px;padding:24px}
.gc-delivery__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.gc-delivery__opt{background:#fff;border:1px solid var(--border);border-radius:12px;padding:16px;cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:10px;position:relative}
.gc-delivery__opt.is-active{background:#EEEDF8;border:1.5px solid var(--indigo)}
.gc-delivery__price{font-size:14px;font-weight:700;color:var(--indigo);padding-top:8px;border-top:1px dashed var(--border);font-variant-numeric:tabular-nums}
.gc-summary-rail{position:sticky;top:24px;display:flex;flex-direction:column;gap:14px}
.gc-summary-card{background:var(--summary-bg);border-radius:14px;padding:24px;border:1px solid var(--border);position:static}
.gc-summary-card h2{margin:0 0 16px;font-family:var(--serif);font-size:22px;font-weight:600;color:var(--brand);letter-spacing:-.3px}
.gc-sumrow{display:flex;justify-content:space-between;padding:7px 0;font-size:14px}
.gc-sumrow span:first-child{color:var(--muted)}
.gc-sumrow span:last-child{font-variant-numeric:tabular-nums}
.gc-sum-total{display:flex;justify-content:space-between;align-items:baseline;padding-top:16px;border-top:1px solid var(--border);margin-top:16px}
.gc-sum-total__val{font-family:var(--serif);font-size:30px;font-weight:600;color:var(--indigo);font-variant-numeric:tabular-nums;letter-spacing:-.5px;white-space:nowrap;text-align:right}
.gc-sum-total__val .woocommerce-Price-amount{white-space:nowrap}
a.gc-trustgrid__item{text-decoration:none;transition:background .15s}
a.gc-trustgrid__item:hover{background:var(--bg-warm);border-radius:var(--r-sm)}
.gc-checkout-cta{margin-top:18px;display:flex;align-items:center;justify-content:center;gap:10px;height:56px;width:100%;background:var(--green);color:#fff;border-radius:12px;font-size:16px;font-weight:700;box-shadow:var(--shadow-cta)}
.gc-checkout-cta:hover{background:var(--green-dark);color:#fff}
.gc-trustgrid{background:#fff;border:1px solid var(--hairline);border-radius:14px;padding:16px 20px;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.gc-trustgrid__item{display:flex;align-items:center;gap:10px}
.gc-trustgrid__ic{width:34px;height:34px;border-radius:8px;background:var(--bg-table);color:var(--brand);display:grid;place-items:center;flex:none}
.gc-trustgrid__t{font-size:12.5px;font-weight:600;color:var(--ink)}
.gc-trustgrid__s{font-size:11px;color:var(--muted)}
.gc-pay{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 4px}
.gc-pay__label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:1.2px;font-weight:600}
.gc-pay__badges{display:flex;gap:6px}
.gc-pay__badge{font-size:9.5px;font-weight:700;padding:5px 7px;border-radius:4px;letter-spacing:.3px}

/* ============================================================
   16h. CHECKOUT (krok 2/2 — jedna kolumna, sekcje-karty, pełna szerokość)
   ============================================================ */
.gc-woo-content{padding-block:24px 48px} /* dol jak gora: 48 px od naglowka do tytulu, tyle samo nad stopka */
.gc-checkout-page{max-width:var(--container);margin-inline:auto;padding:0 32px}
/* Podziękowanie po zamówieniu i strona płatności: sekcja 16o na końcu pliku */
.gc-checkout__cols{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:24px;align-items:start;padding-top:8px}
.gc-checkout__main{display:flex;flex-direction:column;gap:16px;min-width:0}
.gc-checkout__rail{position:sticky;top:24px;display:flex;flex-direction:column;gap:14px}
.gc-checkout__rail-card{background:#fff;border:1px solid var(--hairline);border-radius:16px;padding:22px}
.gc-login-card{margin-bottom:16px}

/* Numerowana plakietka sekcji */
.gc-checkout-section{border-radius:16px}
.gc-checkout-section__num{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;
  background:var(--indigo);color:#fff;font-family:var(--mono);font-size:12.5px;font-weight:700;flex:none}

/* Podsumowanie „Twoje zamówienie" */
.gc-osum__title{font-family:var(--serif);font-size:18px;font-weight:600;color:var(--accent);margin-bottom:14px}
.gc-osum__items{display:flex;flex-direction:column;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--hairline)}
.gc-osum__item{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:12px;align-items:center}
.gc-osum__thumb{position:relative;width:46px;height:46px;flex:none}
.gc-osum__thumb img{width:46px;height:46px;border-radius:9px;object-fit:cover;background:var(--bg-warm);border:1px solid var(--border)}
.gc-osum__qty{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:var(--indigo);
  color:#fff;font-size:10.5px;font-weight:700;display:grid;place-items:center;font-variant-numeric:tabular-nums}
.gc-osum__name{font-size:13px;font-weight:600;color:var(--ink);line-height:1.25}
.gc-osum__name a{color:inherit;text-decoration:none}
.gc-osum__name a:hover{color:var(--brand);text-decoration:underline;text-underline-offset:2px}
.gc-osum__thumb a{display:block;line-height:0}
.gc-osum__variant{font-size:11.5px;color:var(--muted);margin-top:2px}
.gc-osum__price{font-size:13px;font-weight:600;color:var(--ink);white-space:nowrap;font-variant-numeric:tabular-nums}
.gc-osum__ship{padding:14px 0;border-bottom:1px solid var(--hairline)}
.gc-osum__label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.gc-osum__totals{padding-top:12px}
.gc-osum__total{display:flex;justify-content:space-between;align-items:baseline;padding-top:12px;margin-top:8px;border-top:1px solid var(--border)}
.gc-osum__total-val{font-family:var(--serif);font-size:22px;font-weight:600;color:var(--indigo);font-variant-numeric:tabular-nums;white-space:nowrap}

/* Trust row pod podsumowaniem */
.gc-checkout-trust{display:flex;flex-wrap:wrap;gap:10px 16px;justify-content:center;padding:8px 4px;font-size:12px;color:var(--muted)}
.gc-checkout-trust span{display:inline-flex;align-items:center;gap:6px}
.gc-checkout-trust svg{color:var(--green-dark);flex:none}
.gc-checkout-section{background:#fff;border:1px solid var(--hairline);border-radius:var(--r-lg);padding:26px;box-shadow:var(--shadow-card)}
.gc-checkout-section__title{display:flex;align-items:center;gap:10px;font-family:var(--serif);font-weight:600;font-size:21px;
  color:var(--brand);margin:0 0 18px;letter-spacing:-.2px}
.gc-checkout-section__title svg{color:var(--accent);flex:none}
.gc-checkout-section__head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:14px;flex-wrap:wrap}
.gc-checkout-section__head .gc-checkout-section__title{margin:0}

/* Pola formularza — siatka 2-kolumnowa, wybrane pola na całą szerokość */
.gc-checkout h3{font-family:var(--serif);font-weight:600;font-size:17px;color:var(--brand);margin:0 0 14px}
.gc-checkout .woocommerce-billing-fields__field-wrapper,
.gc-checkout .woocommerce-shipping-fields__field-wrapper,
.gc-checkout .woocommerce-additional-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.gc-checkout .form-row{margin:0 0 14px;display:flex;flex-direction:column;min-width:0}
/* Imię/nazwisko obok siebie, każde wypełnia pół szerokości. WooCommerce ma .woocommerce form .form-row-first{width:47%}
   i .form-row{padding:3px} o wyższej specyficzności — stąd podwójna klasa formularza. */
.woocommerce-checkout.gc-checkout .form-row{padding:0}
.woocommerce-checkout.gc-checkout .form-row.form-row-first,.woocommerce-checkout.gc-checkout .form-row.form-row-last{width:auto;float:none}
.gc-checkout .form-row-wide,.gc-checkout .notes,
.gc-checkout .form-row[id*="_country"],.gc-checkout .form-row[id*="_state"],
.gc-checkout .form-row[id*="address_1"],.gc-checkout .form-row[id*="address_2"],
.gc-checkout .form-row[id*="_email"],.gc-checkout .form-row[id*="_company"],
.gc-checkout .form-row[id*="_phone"],.gc-checkout .form-row[id*="tax_no"],
.gc-checkout .form-row.gc-company-toggle,
.gc-checkout .form-row[id*="order_comments"]{grid-column:1/-1}
.gc-checkout .form-row label{font-size:13px;font-weight:600;color:var(--ink);margin-bottom:6px}
.gc-checkout .form-row .required{color:var(--sale);text-decoration:none}
.gc-checkout .form-row .optional{color:var(--muted-2);font-weight:400}
/* Wszystkie inputy identyczne (jak kraj/region) */
.gc-checkout input.input-text,.gc-checkout textarea,.gc-checkout select,
.gc-checkout .select2-container .select2-selection--single{
  width:100%!important;min-height:48px!important;padding:0 14px!important;border:1.5px solid var(--border)!important;
  border-radius:var(--r-md)!important;font-size:14px;font-family:inherit;color:var(--ink);background:#fff!important;
  line-height:46px;box-shadow:none!important;transition:border-color .15s}
.gc-checkout textarea{min-height:90px!important;line-height:1.5;padding:12px 14px!important}
/* Oryginalny <select> ukryty przez select2 — nie może dostać width:100% (wystawał poza stronę → przewijanie w bok) */
.woocommerce-checkout.gc-checkout select.select2-hidden-accessible{width:1px!important;height:1px!important;min-height:0!important;padding:0!important;border:0!important}
.gc-checkout .select2-container--default .select2-selection--single{border:1.5px solid var(--border)!important;border-radius:var(--r-md)!important;height:48px!important}

/* Pola firmowe (ukryte do zaznaczenia „Zakupy na firmę") */
.gc-company-field{display:none!important;grid-column:1/-1}
.gc-company-field.is-on{display:flex!important}
.gc-checkout .gc-company-toggle{margin:4px 0 6px}

/* Przełączniki sekcji (faktura, konto, inny adres) — styl nagłówka „Dane rozliczeniowe" */
/* .woocommerce-checkout.gc-checkout + label.checkbox — mocniej niż WC .woocommerce form .form-row label.checkbox{display:inline} */
.woocommerce-checkout.gc-checkout .gc-company-toggle label.checkbox,
.woocommerce-checkout.gc-checkout .create-account label.woocommerce-form__label-for-checkbox,
.woocommerce-checkout.gc-checkout #ship-to-different-address label{display:inline-flex;flex-direction:row;align-items:center;gap:12px;margin:0;
  font-family:var(--serif);font-size:17px;font-weight:600;line-height:1.3;letter-spacing:0;color:var(--brand);cursor:pointer}
.gc-checkout .gc-company-toggle .optional{display:none}
.gc-checkout .create-account{margin:14px 0 6px}
.gc-checkout #ship-to-different-address{margin:14px 0 16px}

/* Checkboxy checkoutu — większe, jasnoszara ramka, hover, zaznaczone w kolorze nagłówków (--brand) */
@keyframes gc-cb-pop{0%{transform:scale(.8)}60%{transform:scale(1.1)}100%{transform:scale(1)}}
/* .woocommerce-checkout.gc-checkout — mocniej niż WC .woocommerce form .form-row .input-checkbox{margin:-2px 8px 0 0} */
.woocommerce-checkout.gc-checkout input[type=checkbox],.gc-checkout input[type=checkbox]{-webkit-appearance:none;appearance:none;display:inline-block;flex:none;width:22px;height:22px;margin:0;padding:0;
  border:1.5px solid #D3D0DA;border-radius:6px;background:#fff center/15px 15px no-repeat;cursor:pointer;vertical-align:middle;
  transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}
.gc-checkout input[type=checkbox]:hover,
.gc-checkout label:hover>input[type=checkbox]{border-color:#A8A3B5;box-shadow:0 0 0 4px rgba(51,43,112,.08)}
.gc-checkout input[type=checkbox]:checked{border-color:var(--brand);background-color:var(--brand);animation:gc-cb-pop .22s cubic-bezier(.33,1,.68,1);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7.5'/%3E%3C/svg%3E")}
.gc-checkout input[type=checkbox]:checked:hover,
.gc-checkout label:hover>input[type=checkbox]:checked{border-color:var(--indigo);background-color:var(--indigo);box-shadow:0 0 0 4px rgba(51,43,112,.14)}
.gc-checkout input[type=checkbox]:focus-visible{outline:0;box-shadow:0 0 0 3px rgba(51,43,112,.3)}

/* Banner logowania (styl jak kupon) */
.gc-login-card{background:var(--bg-warm);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden}
.gc-login-card__bar{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;background:none;border:0;
  padding:16px 20px;cursor:pointer;font-size:15px;color:var(--ink)}
.gc-login-card__bar strong{color:var(--brand)}
.gc-login-card__cta{color:var(--green-dark);font-weight:600}
.gc-login-card__chev{display:inline-flex;transition:transform .2s;color:var(--muted)}
.gc-login-card.is-open .gc-login-card__chev{transform:rotate(180deg)}
.gc-login-card__panel{padding:0 20px 20px;border-top:1px solid var(--hairline)}
.gc-login-card__panel .woocommerce-form-login{margin:16px 0 0;border:0;padding:0}
.gc-login-card__panel .button{background:var(--brand)!important;color:#fff!important;border-radius:var(--r-md)!important;border:0!important;height:46px;padding:0 22px}

/* Błąd regulaminu — przy checkboxie, nie u góry */
.gc-terms-error{display:flex;align-items:center;gap:9px;background:#FBEDEA;border:1px solid #F0C8C0;color:var(--sale);
  font-size:14px;font-weight:600;padding:12px 14px;border-radius:var(--r-md);margin-bottom:12px;animation:gc-fade-slide .18s ease}
.gc-terms-error::before{content:"!";flex:none;width:20px;height:20px;border-radius:var(--r-pill);background:var(--sale);color:#fff;
  display:grid;place-items:center;font-weight:800;font-size:12px}
.gc-checkout .select2-container .select2-selection--single .select2-selection__rendered{line-height:46px;padding:0 24px 0 14px;color:var(--ink)}
.gc-checkout .select2-container .select2-selection--single .select2-selection__arrow{height:46px;right:10px}
.gc-checkout input:focus,.gc-checkout textarea:focus,.gc-checkout select:focus{outline:0;border-color:var(--brand)}
.gc-checkout .woocommerce-input-wrapper{display:block}
.gc-checkout .woocommerce-form__label-for-checkbox{flex-direction:row;align-items:flex-start;gap:10px;font-weight:500}
/* #ship-to-different-address label — styl w bloku „Przełączniki sekcji" wyżej */

/* Produkty (jak w koszyku, ze zdjęciami) */
.gc-corder__items{display:flex;flex-direction:column;gap:16px}
/* Stałe kolumny: stepper i cena równo w pionie, niezależnie od długości nazwy/ceny */
.gc-corder__item{display:grid;grid-template-columns:56px minmax(0,1fr) 124px 150px;gap:14px;align-items:center;transition:opacity .2s}
.gc-corder__qtystepper{justify-self:center}
.gc-corder__thumb{position:relative;width:56px;height:56px;flex:none}
.gc-corder__thumb img{width:56px;height:56px;border-radius:var(--r-sm);object-fit:cover;background:var(--bg-warm);border:1px solid var(--border)}
.gc-corder__name{font-weight:600;color:var(--ink);font-size:14px;line-height:1.3}
.gc-corder__meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:5px}
.gc-corder__qtystepper{height:36px}
.gc-corder__qtystepper button{width:30px;height:30px}
.gc-corder__qtystepper input{width:34px}
.gc-corder__qty-badge{color:var(--muted);font-size:13px;font-weight:600}
.gc-corder__price{font-family:var(--serif);font-weight:600;color:var(--ink);font-size:15px;white-space:nowrap;text-align:right}

/* Karty dostawy (wg projektu) */
.gc-ship-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.gc-ship-card{position:relative;display:flex;flex-direction:column;gap:10px;padding:16px;cursor:pointer;
  background:#fff;border:1.5px solid var(--border);border-radius:var(--r-md);transition:all .15s}
.gc-ship-card:hover{border-color:var(--border-strong)}
.gc-ship-card.is-active{background:#EEEDF8;border-color:var(--indigo)}
.gc-ship-card__radio{position:absolute;opacity:0;pointer-events:none}
.gc-ship-card__top{display:flex;align-items:center;gap:12px}
.gc-ship-card__dot{width:22px;height:22px;border-radius:50%;border:1.5px solid var(--border-strong);background:#fff;flex:none;transition:all .15s}
.gc-ship-card.is-active .gc-ship-card__dot{border:6px solid var(--indigo)}
.gc-ship-card__ic{color:var(--brand);display:inline-flex}
.gc-ship-card__title{font-size:15px;font-weight:600;color:var(--ink)}
.gc-ship-card__price{font-size:14px;font-weight:700;color:var(--indigo);font-variant-numeric:tabular-nums;
  padding-top:10px;border-top:1px dashed var(--border)}
.gc-ship-card__price.is-free{color:var(--green-dark)}

/* Podsumowanie w przeglądzie */
.gc-corder__summary .gc-sum-total{margin-top:8px}

/* Płatność — karty klikalne zamiast brzydkich radio */
.gc-payment #payment{background:transparent;border-radius:0}
.gc-payment .woocommerce-terms-and-conditions-wrapper{font-size:13px;color:var(--muted);margin-bottom:0}
.gc-payment .place-order{padding-top:4px}
/* Zgody razem: „Zaakceptuj wszystkie” + regulamin + zgody dodatkowe (jak w zamówieniu subskrypcji) */
/* .woocommerce-checkout.gc-checkout — mocniej niż ogólne reguły etykiet checkoutu (.gc-checkout .form-row label) */
.woocommerce-checkout.gc-checkout .gc-payment label.gc-consent-all{display:flex;align-items:center;gap:10px;margin:14px 0 0;padding:12px 14px;border:1.5px solid var(--border);border-radius:11px;background:#fff;font-size:13.5px;font-weight:700;line-height:1.4;color:var(--ink);cursor:pointer}
.woocommerce-checkout.gc-checkout .gc-payment label.gc-consent-all:hover{border-color:var(--indigo)}
.gc-payment .woocommerce-terms-and-conditions-wrapper>.form-row{margin:12px 0 0;padding:0 15.5px}
/* regulamin: checkbox „wisi” po lewej, tekst z gwiazdką zawija się obok (wcięcie = checkbox 22px + odstęp 10px) */
.woocommerce-checkout.gc-checkout .gc-payment .woocommerce-terms-and-conditions-wrapper>.form-row label{display:block;position:relative;margin:0;padding-left:32px;font-size:13px;font-weight:400;line-height:1.5;color:var(--text);cursor:pointer}
.woocommerce-checkout.gc-checkout .gc-payment .woocommerce-terms-and-conditions-wrapper>.form-row label>input[type=checkbox]{position:absolute;left:0;top:-1px}
.gc-payment .gc-consents{padding:0 15.5px}
.gc-payment #place_order{margin-top:18px}
/* Ekran „składamy zamówienie” po kliknięciu „Kupuję i płacę” (checkout.js) */
.gc-placing{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(30,27,80,.46);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:gc-placing-in .18s ease-out}
.gc-placing[hidden]{display:none}
.gc-placing__card{width:min(420px,100%);padding:32px 28px 28px;border-radius:var(--r-xl);background:#fff;box-shadow:0 24px 60px rgba(30,27,80,.28);text-align:center}
.gc-placing__spinner{display:block;width:46px;height:46px;margin:0 auto 18px;border-radius:50%;border:4px solid var(--border);border-top-color:var(--green);animation:gc-placing-spin .8s linear infinite}
.gc-placing__title{display:block;font-family:var(--serif);font-size:23px;font-weight:500;line-height:1.2;letter-spacing:-.3px;color:var(--indigo)}
.gc-placing__text{display:block;margin-top:9px;font-size:14px;line-height:1.5;color:var(--muted)}
@keyframes gc-placing-spin{to{transform:rotate(360deg)}}
@keyframes gc-placing-in{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion:reduce){.gc-placing{animation:none}.gc-placing__spinner{animation-duration:1.6s}}
#place_order{width:100%;height:58px;background:var(--green)!important;color:#fff!important;border:0!important;
  border-radius:var(--r-pill)!important;font-size:16px;font-weight:700;cursor:pointer;box-shadow:var(--shadow-cta-lg);transition:background .15s}
#place_order:hover{background:var(--green-dark)!important}
.gc-checkout .woocommerce-privacy-policy-text{font-size:12px;color:var(--muted)}

/* ============================================================
   16i. STRONA PRODUKTU — pełna rekonstrukcja (warianty, sekcje, sticky)
   ============================================================ */
/* Pełna szerokość — sekcje z tłami rozciągnięte; breadcrumb i top w kontenerze */
/* Okruszki wg projektu: 18px nad, 14px pod + 12px nad treścią produktu (padding .gc-pdp) */
.gc-pdp-main{padding-top:0}
.gc-pdp-main>.woocommerce-breadcrumb{max-width:var(--container);margin:0 auto;padding:18px 32px 14px}
.gc-pdp-main>.gc-pdp-wrap>.gc-pdp,.gc-pdp-main .gc-pdp{padding-top:12px}

/* Qty na PDP — ukryte strzałki, cyfra na środku (także po najechaniu) */
.gc-pdp__qty input{-moz-appearance:textfield;appearance:textfield;text-align:center}
.gc-pdp__qty input::-webkit-outer-spin-button,.gc-pdp__qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}

/* Galeria — ukryj lupkę WooCommerce, pokaż serce ulubionych */
.gc-pdp .woocommerce-product-gallery__trigger{display:none!important}
.gc-pdp__heart-wrap{z-index:4}
.gc-pdp__heart-wrap .gc-pdp__heart{position:static;width:44px;height:44px}

/* „Dodaj do ulubionych" pod ATC — serce inline */
.gc-pdp__fav{display:inline-flex;align-items:center;gap:6px;cursor:pointer;color:var(--muted)}
.gc-pdp__fav .gc-card__heart,.gc-pdp__fav .gc-pdp__heart{position:static;width:22px;height:22px;background:none;backdrop-filter:none;color:var(--muted);padding:0;box-shadow:none}
.gc-pdp__fav .gc-card__heart.is-active svg,.gc-pdp__fav .gc-pdp__heart.is-active svg{fill:var(--heart)}
.gc-pdp__fav .is-active{color:var(--heart)}

/* Sticky nav — większe odstępy + płynne przewijanie */
html{scroll-behavior:smooth}
#opis,#parzenie,#specyfikacja,#opinie,#dostawa{scroll-margin-top:140px}

/* Karty „Zamów dziś, wypij jutro" (1:1 z projektem) */
.gc-delivery3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.gc-delivery3__card{padding:28px;border-radius:var(--r-lg);background:var(--bg-warm);border:1px solid var(--border)}
.gc-delivery3__ic{font-size:40px;line-height:1;margin-bottom:14px}
.gc-delivery3__title{font-family:var(--serif);font-size:22px;font-weight:600;color:var(--accent);margin:0 0 8px;letter-spacing:-.01em}
.gc-delivery3__desc{font-size:13.5px;line-height:1.55;color:var(--text);margin:0 0 16px}
.gc-delivery3__links{display:flex;flex-direction:column;gap:6px}
.gc-delivery3__links a{display:flex;align-items:center;gap:5px;font-size:13px;color:var(--accent);font-weight:500;text-decoration:none}
.gc-delivery3__links a svg{transform:rotate(-90deg);flex:none}
.gc-delivery3__links a:hover{color:var(--indigo)}

.gc-pdp__field{margin-bottom:18px}
.gc-variant__top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}
.gc-variant__price{font-size:14px;font-weight:700;font-variant-numeric:tabular-nums;color:inherit;white-space:nowrap}
.gc-variant__sub{display:block;margin-top:4px;font-size:11.5px;font-weight:500;color:var(--muted)}
.gc-variant.is-active .gc-variant__sub{color:var(--lime)}
.gc-variant__save{position:absolute;top:-8px;right:12px;background:var(--green);color:#fff;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:3px 8px;border-radius:999px;white-space:nowrap;box-shadow:0 2px 6px rgba(100,188,81,.35)}
.gc-pdp__atc{gap:8px}
.gc-pdp__atc-price{font-family:var(--serif);font-weight:700}
.gc-pdp__freeship{margin:6px 0 18px}
.gc-pdp__fav{display:inline-flex;align-items:center;gap:6px;color:var(--muted)}
.gc-pdp__rating-link{text-decoration:none}
.gc-pdp__field .gc-selector-label{display:block;margin-bottom:8px}

/* Sticky nav sekcji */
.gc-pdp-nav{position:sticky;top:0;z-index:40;background:#fff;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.gc-pdp-nav__row{display:flex;gap:14px;align-items:center;overflow-x:auto}
.gc-pdp-nav a{padding:16px 8px;font-size:13.5px;font-weight:500;color:var(--text);white-space:nowrap;border-bottom:2px solid transparent;text-decoration:none}
.gc-pdp-nav a:hover{color:var(--brand)}
.gc-pdp-nav a.is-active{color:var(--accent);border-bottom-color:var(--accent)}
/* Barista AI w pasku sekcji (wg projektu) */
.gc-pdp-nav__ask{margin-left:auto;display:flex;align-items:center;gap:12px;flex:none;padding-left:16px}
.gc-pdp-nav__ask-txt{font-size:12px;color:var(--muted);white-space:nowrap}
.gc-pdp-nav__ask-txt strong{color:var(--ink);font-weight:700}
.gc-pdp-nav__ask-btn{padding:8px 14px;border-radius:var(--r-pill);background:var(--lime);color:var(--accent);border:1px solid var(--kraft-light);
  font-family:var(--sans);font-size:12.5px;font-weight:600;white-space:nowrap;cursor:pointer;transition:background var(--transition),border-color var(--transition)}
.gc-pdp-nav__ask-btn:hover{background:#dbe6ae;border-color:var(--border-strong)}

/* Opis */
.gc-pdp-desc__grid{display:grid;grid-template-columns:1fr 1.4fr;gap:64px}
.gc-pdp-desc__aside{position:sticky;top:80px}
.gc-pdp-quote{margin-top:22px;padding:20px;background:var(--bg-chip);border-radius:var(--r-md);font-size:14px;line-height:1.55;color:var(--text)}
.gc-pdp-quote__label{font-family:var(--serif);font-size:15px;color:var(--accent);font-weight:600;margin-bottom:8px}
.gc-pdp-desc__lead{font-family:var(--serif);font-size:22px;line-height:1.4;font-style:italic;color:var(--ink);margin:0 0 24px}
.gc-pdp-desc__body{font-size:15px;line-height:1.65;color:var(--text)}
.gc-pdp-desc__body p{margin:0 0 18px}.gc-pdp-desc__body strong{color:var(--ink)}

/* Jak parzyć (navy) */
.gc-pdp-brew{padding:72px 0;background:var(--indigo);color:#fff;position:relative;overflow:hidden}
.gc-pdp-brew__head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:40px;flex-wrap:wrap}
.gc-pdp-brew__intro{font-size:14px;line-height:1.55;color:rgba(255,255,255,.7);max-width:380px;margin:0}
.gc-pdp-brew__intro strong{color:var(--lime)}
.gc-pdp-brew__deco{position:absolute;top:-50px;right:-50px;color:#fff;opacity:.05;transform:rotate(15deg);pointer-events:none;line-height:0}
.gc-pdp-brew .gc-container{position:relative}
.gc-pdp-brew__title{color:#fff;margin-top:10px;font-size:40px;font-weight:500;line-height:1.05;letter-spacing:-.02em}
.gc-pdp-brew__grid{display:grid;grid-template-columns:repeat(var(--gc-brew-cols,4),minmax(0,1fr));gap:20px}
.gc-pdp-brew__grid--1{max-width:calc(50% - 10px)}
.gc-pdp-brew__card{position:relative;padding:24px 22px 22px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);border-radius:14px}
.gc-pdp-brew__card.is-rec{background:rgba(228,236,191,.1);border:1.5px solid var(--lime)}
.gc-pdp-brew__badge{position:absolute;top:-10px;left:16px;background:var(--lime);color:var(--indigo);font-size:10px;font-weight:700;letter-spacing:.08em;padding:4px 10px;border-radius:var(--r-pill);text-transform:uppercase}
.gc-pdp-brew__ic{display:block;font-size:36px;line-height:1;margin-bottom:12px}
.gc-pdp-brew__name{font-family:var(--serif);font-size:22px;font-weight:600;color:#fff;margin:0 0 14px}
.gc-pdp-brew__rows{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}
.gc-pdp-brew__rows div{display:flex;justify-content:space-between;font-size:12.5px}
.gc-pdp-brew__rows span{color:rgba(255,255,255,.55)}.gc-pdp-brew__rows strong{color:#fff;font-weight:600;font-variant-numeric:tabular-nums}
.gc-pdp-brew__desc{font-size:12.5px;line-height:1.5;color:rgba(255,255,255,.65);margin:0}

/* Specyfikacja */
.gc-pdp-spec__grid{display:grid;grid-template-columns:1fr 2fr;gap:64px}
.gc-pdp-spec__table{background:#fff;border:1px solid var(--border);border-radius:14px;overflow:hidden}
.gc-pdp-spec__row{display:grid;grid-template-columns:240px 1fr;padding:14px 24px}
.gc-pdp-spec__row.is-alt{background:var(--bg-warm)}
.gc-pdp-spec__row+.gc-pdp-spec__row{border-top:1px solid var(--border)}
.gc-pdp-spec__k{font-size:13px;font-weight:600;color:var(--muted)}
.gc-pdp-spec__v{font-size:13.5px;color:var(--ink);font-weight:500}

/* Opinie */
.gc-pdp-reviews{display:grid;grid-template-columns:280px 1fr;gap:48px;align-items:start}
.gc-pdp-reviews__summary{background:var(--bg-warm);border:1px solid var(--hairline);border-radius:14px;padding:24px;text-align:center;position:sticky;top:80px}
.gc-pdp-reviews__avg{font-family:var(--serif);font-size:52px;font-weight:600;color:var(--ink);line-height:1}
.gc-pdp-reviews__dist{margin-top:18px;display:flex;flex-direction:column;gap:7px;text-align:left}
.gc-pdp-reviews__distrow{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}
.gc-pdp-reviews__bar{flex:1;height:7px;background:var(--kraft-light);border-radius:var(--r-pill);overflow:hidden}
.gc-pdp-reviews__bar span{display:block;height:100%;background:var(--green)}
.gc-pdp-reviews__list .comment-form{margin-top:24px}

/* Opinie z Trusted Shops (API eTrusted) — gc_et_section_html() w inc/etrusted.php */
.gc-rev__head{margin-bottom:28px}
.gc-rev__head .gc-h2{margin:10px 0 0}
.gc-rev__howto{max-width:820px;margin:-8px 0 28px;padding:16px 20px;background:var(--bg-warm);border:1px solid var(--hairline);border-radius:var(--r-lg);font-size:14px;line-height:1.6;color:var(--text)}
.gc-rev__howto strong{display:block;margin-bottom:2px;color:var(--ink)}
.gc-rev__howto p{margin:0}
.gc-rev__howto a{color:var(--brand);font-weight:600;white-space:nowrap}
.gc-rev__grid{display:grid;grid-template-columns:320px minmax(0,1fr);gap:48px;align-items:start}
.gc-rev__aside{position:sticky;top:calc(var(--gc-header-h,132px) + 16px);display:flex;flex-direction:column;gap:16px}
.gc-rev__summary{padding:26px 24px 18px;background:var(--bg-warm);border:1px solid var(--hairline);border-radius:var(--r-lg)}
.gc-rev__avg{display:flex;align-items:baseline;gap:8px;margin-bottom:12px;font-family:var(--serif);line-height:1;color:var(--ink)}
.gc-rev__avg strong{font-size:56px;font-weight:600;letter-spacing:-1.5px;font-variant-numeric:tabular-nums}
.gc-rev__avg span{font-size:20px;font-weight:500;color:var(--muted)}
.gc-rev__based{margin:10px 0 0;font-size:13px;line-height:1.5;color:var(--muted)}
.gc-rev__dist{display:flex;flex-direction:column;gap:2px;margin-top:16px;padding-top:12px;border-top:1px solid var(--hairline)}
.gc-rev__distrow{display:grid;grid-template-columns:30px minmax(0,1fr) 28px;align-items:center;gap:10px;width:calc(100% + 16px);margin:0 -8px;padding:6px 8px;border:0;border-radius:var(--r-sm);background:none;font-family:var(--sans);font-size:12.5px;color:var(--muted);text-align:left;transition:background var(--transition)}
.gc-rev__distrow:hover:not(:disabled){background:rgba(30,27,80,.06)}
.gc-rev__distrow[aria-pressed="true"]{background:var(--lime);color:var(--indigo)}
.gc-rev__distrow[aria-pressed="true"] .gc-rev__bar{background:#fff}
.gc-rev__distrow:disabled{cursor:default;opacity:.5}
.gc-rev__distlabel{font-weight:600;color:var(--ink);white-space:nowrap}
.gc-rev__bar{height:7px;background:var(--kraft-light);border-radius:var(--r-pill);overflow:hidden}
.gc-rev__bar span{display:block;height:100%;background:var(--green);border-radius:inherit}
.gc-rev__distn{font-family:var(--mono);font-size:11.5px;text-align:right;font-variant-numeric:tabular-nums}
.gc-rev__verified{display:flex;align-items:flex-start;gap:12px;padding:16px 18px;background:var(--lime);border-radius:var(--r-lg);font-size:13px;line-height:1.55;color:var(--indigo)}
.gc-rev__verified strong{display:block;margin-bottom:2px;font-size:14px}
.gc-rev__verified-ic{flex:none;display:flex;align-items:center;justify-content:center;width:26px;height:26px;margin-top:1px;border-radius:50%;background:var(--indigo);color:var(--lime)}
.gc-rev__chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.gc-rev__chips .gc-chip:hover{border-color:var(--indigo)}
.gc-rev__list{display:flex;flex-direction:column;gap:14px;transition:opacity var(--transition)}
.gc-rev__list[aria-busy="true"]{opacity:.45;pointer-events:none}
.gc-rev__item{padding:22px 24px;background:#fff;border:1px solid var(--border);border-radius:var(--r-lg)}
.gc-rev__item-head{display:flex;align-items:center;gap:12px}
.gc-rev__avatar{flex:none;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:var(--lime);color:var(--indigo);font-family:var(--serif);font-size:19px;font-weight:600;line-height:1}
.gc-rev__avatar--anon{background:var(--bg-chip);color:var(--muted)}
.gc-rev__who{flex:1;min-width:0}
.gc-rev__name{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:14.5px;font-weight:600;color:var(--ink)}
.gc-rev__badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:var(--r-pill);background:#EEF6E9;color:var(--green-dark);font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.08em;line-height:1.2;text-transform:uppercase}
.gc-rev__date{display:block;margin-top:2px;font-size:12.5px;color:var(--muted)}
.gc-rev__title{margin:16px 0 0;font-family:var(--serif);font-size:20px;font-weight:500;line-height:1.3;letter-spacing:-.2px;color:var(--ink)}
.gc-rev__text{margin:14px 0 0;font-size:14.5px;line-height:1.65;color:var(--text);overflow-wrap:anywhere}
.gc-rev__title+.gc-rev__text{margin-top:8px}
.gc-rev__tags{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 0;padding:0;list-style:none}
.gc-rev__tags li{padding:4px 10px;border-radius:var(--r-pill);background:var(--bg-chip);font-size:12px;font-weight:500;color:var(--brand)}
.gc-rev__reply{margin-top:16px;padding:14px 16px;background:var(--bg-warm);border-left:3px solid var(--green);border-radius:0 var(--r-md) var(--r-md) 0;font-size:13.5px;line-height:1.6;color:var(--text)}
.gc-rev__reply-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px;margin-bottom:4px}
.gc-rev__reply-head strong{font-size:13px;color:var(--ink)}
.gc-rev__reply-head time{font-size:12px;color:var(--muted)}
.gc-rev__reply p{margin:0;overflow-wrap:anywhere}
.gc-rev__more{margin-top:24px;text-align:center}
.gc-rev__none,.gc-rev__error{margin:0;padding:22px 24px;border:1px dashed var(--border-strong);border-radius:var(--r-lg);font-size:14px;color:var(--muted);text-align:center}
.gc-rev__error{margin-top:14px;border-color:var(--sale);color:var(--sale)}
.gc-rev__empty{display:flex;align-items:flex-start;gap:18px;max-width:860px;padding:26px 28px;background:var(--bg-warm);border:1px solid var(--hairline);border-radius:var(--r-lg)}
.gc-rev__empty-ic{flex:none;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:var(--lime);color:var(--indigo)}
.gc-rev__empty-title{margin:2px 0 6px;font-family:var(--serif);font-size:22px;font-weight:500;line-height:1.25;color:var(--ink)}
.gc-rev__empty p{margin:0;font-size:14.5px;line-height:1.6;color:var(--text)}
.gc-rev__empty p.gc-rev__empty-shop{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--hairline);font-size:13.5px}
.gc-rev__empty-shop a{color:var(--brand);font-weight:600}
@media(max-width:1100px){
  .gc-rev__grid{grid-template-columns:1fr;gap:24px}
  .gc-rev__aside{position:static;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}
}
@media(max-width:760px){
  .gc-rev__aside{grid-template-columns:1fr}
  .gc-rev__head .gc-btn{width:100%}
  .gc-rev__item{padding:18px 16px}
  .gc-rev__item-head{display:grid;grid-template-columns:42px minmax(0,1fr);gap:10px 12px}
  .gc-rev__item-head .gc-starbar{grid-column:1/-1}
  .gc-rev__title{font-size:18px}
  .gc-rev__empty{flex-direction:column;padding:22px 18px}
}

/* Sticky ATC bar */
.gc-pdp-sticky{position:fixed;top:0;left:0;right:0;z-index:90;background:#fff;border-bottom:1px solid var(--border);box-shadow:0 4px 16px rgba(30,27,80,.08);transform:translateY(-100%);transition:transform .28s cubic-bezier(.4,0,.2,1)}
.gc-pdp-sticky.is-visible{transform:none}
.gc-pdp-sticky__row{display:flex;align-items:center;gap:18px;padding:12px 32px}
.gc-pdp-sticky__thumb img{width:52px;height:52px;border-radius:8px;object-fit:cover;background:var(--bg-warm)}
.gc-pdp-sticky__info{flex:1;min-width:0}
.gc-pdp-sticky__name{font-family:var(--serif);font-size:17px;font-weight:600;color:var(--brand);line-height:1.2}
.gc-pdp-sticky__price{font-family:var(--serif);font-size:24px;font-weight:700;color:var(--ink);white-space:nowrap}
.gc-pdp-sticky__btn{height:48px;padding:0 24px;flex:none}

/* ============================================================
   16j. KONTO KLIENTA (sidebar + treść wg wzorca)
   ============================================================ */
.gc-account{display:grid;grid-template-columns:264px minmax(0,1fr);gap:24px;align-items:start}
.gc-account-nav{background:#fff;border:1px solid var(--hairline);border-radius:16px;padding:18px;position:sticky;top:24px}
.gc-account-nav__user{display:flex;align-items:center;gap:12px;padding:4px 6px 16px;border-bottom:1px solid var(--border);margin-bottom:12px}
.gc-account-nav__avatar{width:44px;height:44px;border-radius:50%;background:var(--indigo);color:var(--lime);display:grid;place-items:center;font-family:var(--serif);font-weight:700;font-size:17px;flex:none}
.gc-account-nav__name{font-family:var(--serif);font-size:16px;font-weight:600;color:var(--ink);line-height:1.3}
.gc-account-nav__email{font-size:11.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:170px}
.gc-account-nav__list{list-style:none;margin:0;padding:0}
.gc-account-nav__list li{margin:0 0 2px}
.gc-account-nav__list a{display:flex;align-items:center;gap:11px;padding:10px;border-radius:10px;color:var(--text);font-size:13.5px;font-weight:500;text-decoration:none;transition:background .15s}
.gc-account-nav__ic{color:var(--muted);display:inline-flex;flex:none}
.gc-account-nav__list a:hover{background:var(--bg-warm)}
.gc-account-nav .is-active>a,.gc-account-nav .woocommerce-MyAccount-navigation-link--active>a{background:var(--indigo);color:#fff;font-weight:600}
.gc-account-nav .is-active .gc-account-nav__ic,.gc-account-nav .woocommerce-MyAccount-navigation-link--active .gc-account-nav__ic{color:var(--lime)}
.gc-account-nav .woocommerce-MyAccount-navigation-link--customer-logout>a{color:var(--muted)}
.gc-account-nav__group{margin-bottom:8px}
.gc-account-nav__grouplabel{font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2);padding:10px 8px 6px}
.gc-account-nav__badge{font-size:11px;font-weight:700;background:var(--bg-chip);color:var(--muted);padding:1px 8px;border-radius:var(--r-pill);margin-left:auto}
.gc-account-nav .is-active .gc-account-nav__badge,.gc-account-nav .woocommerce-MyAccount-navigation-link--active .gc-account-nav__badge{background:rgba(255,255,255,.18);color:#fff}
.gc-account-nav__logout{border-top:1px solid var(--border);margin-top:6px;padding-top:8px}

/* Pulpit */
.gc-account__content{min-width:0}
.gc-account-dash__head{margin-bottom:22px}
.gc-account-dash__hi{font-family:var(--serif);font-weight:500;font-size:30px;letter-spacing:-.02em;color:var(--ink);margin:0}
.gc-account-dash__sub{font-size:14px;color:var(--muted);margin:6px 0 0}

/* Karty statusu (styl wzorca) */
.gc-acards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:22px}
.gc-acard{display:flex;flex-direction:column;gap:8px;padding:22px;background:#fff;border:1px solid var(--hairline);border-radius:16px;text-decoration:none;transition:transform .15s,box-shadow .15s,border-color .15s}
.gc-acard:hover{border-color:var(--border-strong);transform:translateY(-2px);box-shadow:var(--shadow-soft)}
.gc-acard__top{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;color:var(--brand)}
.gc-acard__h{font-family:var(--serif);font-size:22px;font-weight:600;color:var(--ink);line-height:1.1;letter-spacing:-.01em}
.gc-acard__s{font-size:12.5px;color:var(--muted)}

/* Ostatnie zamówienia */
.gc-orders__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.gc-order-card{background:#fff;border:1px solid var(--hairline);border-radius:16px;padding:0;margin-bottom:16px;overflow:hidden}
.gc-order-card__head{display:flex;align-items:center;gap:12px;padding:16px 20px;background:var(--bg-warm);border-bottom:1px solid var(--hairline);flex-wrap:wrap}
.gc-order-card__no{font-family:var(--mono);font-weight:600;font-size:13px;color:var(--ink)}
.gc-order-card__date{font-size:13px;color:var(--muted)}
.gc-order-card__total{margin-left:auto;font-family:var(--serif);font-weight:600;font-size:17px;color:var(--ink);font-variant-numeric:tabular-nums}
.gc-order-card__items{padding:8px 20px}
.gc-order-card__item{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center;padding:10px 0;border-bottom:1px solid var(--hairline)}
.gc-order-card__item:last-child{border-bottom:0}
.gc-order-card__thumb img{width:48px;height:48px;border-radius:9px;object-fit:cover;background:var(--bg-warm);border:1px solid var(--border)}
.gc-order-card__name{font-size:14px;font-weight:600;color:var(--ink)}
.gc-order-card__variant{font-size:12px;color:var(--muted);margin-top:2px}
.gc-order-card__price{font-family:var(--serif);font-weight:600;font-size:14px;color:var(--ink);white-space:nowrap;font-variant-numeric:tabular-nums}
.gc-order-card__actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:14px 20px;border-top:1px solid var(--hairline)}
.gc-order-card__spacer{flex:1}
.gc-order-card__retinfo{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}
.gc-order-card__return{color:var(--brand)!important}

/* Mały przycisk */
.gc-btn--sm{padding:8px 14px;font-size:13px;gap:6px}

/* Plakietki statusu zamówienia */
.gc-ostat{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;padding:4px 11px;border-radius:var(--r-pill)}
.gc-ostat--completed{background:#E8F0E0;color:var(--green-dark)}
.gc-ostat--processing{background:#FBF1DD;color:#9A6B16}
.gc-ostat--cancelled{background:#F7E6E3;color:var(--sale)}
.gc-ostat--neutral{background:var(--bg-chip);color:var(--muted)}

/* Nadpisanie floatów WooCommerce — grid działa, prawa kolumna pełnej szerokości */
.gc-account .woocommerce-MyAccount-navigation,
.gc-account .woocommerce-MyAccount-content{float:none!important;width:auto!important;margin:0!important}
.gc-account-nav__list a{box-sizing:border-box;width:100%}
.gc-account__content::after{content:"";display:table;clear:both}

/* Adresy — siatka 2 kolumny, karty (naprawa rozjechania) */
.gc-account__content .woocommerce-Addresses,.gc-account__content .u-columns.woocommerce-Addresses{
  display:grid!important;grid-template-columns:1fr 1fr;gap:16px;margin:0!important;float:none!important}
.gc-account__content .woocommerce-Addresses::before,.gc-account__content .woocommerce-Addresses::after{display:none!important}
.gc-account__content .woocommerce-Address,.gc-account__content .u-column1,.gc-account__content .u-column2,
.gc-account__content .col-1,.gc-account__content .col-2{float:none!important;width:auto!important;margin:0!important;padding:0!important}
.gc-account__content .woocommerce-Address{background:#fff;border:1px solid var(--hairline);border-radius:14px;padding:22px}
.gc-account__content .woocommerce-Address h2,.gc-account__content .woocommerce-Address h3,
.gc-account__content .woocommerce-Address header.woocommerce-Address-title{font-family:var(--serif);font-size:18px;font-weight:600;color:var(--brand);margin:0 0 12px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.gc-account__content .woocommerce-Address .edit{color:var(--brand);font-weight:600;font-size:13px;text-decoration:none;white-space:nowrap}
.gc-account__content .woocommerce-Address address{font-style:normal;line-height:1.7;color:var(--text);font-size:14px}

/* Formularze konta (Dane i ustawienia, adresy) — inputy jak na checkoucie */
.gc-account__content form .form-row{margin:0 0 14px}
.gc-account__content form .form-row-first,.gc-account__content form .form-row-last{display:inline-block;width:calc(50% - 8px);vertical-align:top;float:none;margin-right:0}
.gc-account__content form .form-row-first{margin-right:12px}
.gc-account__content fieldset{border:1px solid var(--hairline);border-radius:14px;padding:18px 20px;margin:16px 0 0}
.gc-account__content fieldset legend{font-family:var(--serif);font-weight:600;color:var(--brand);padding:0 6px}

/* Accordion zamówień */
.gc-order-acc{background:#fff;border:1px solid var(--hairline);border-radius:14px;margin-bottom:12px;overflow:hidden}
.gc-order-acc__head{width:100%;display:flex;align-items:center;gap:12px;padding:16px 20px;background:none;border:0;cursor:pointer;text-align:left;flex-wrap:wrap}
.gc-order-acc.is-open .gc-order-acc__head{background:var(--bg-warm);border-bottom:1px solid var(--hairline)}
.gc-order-acc__count{margin-left:4px}
.gc-order-acc__head .gc-order-card__total{margin-left:auto}
.gc-order-acc__chev{display:inline-flex;color:var(--muted);transition:transform .2s}
.gc-order-acc.is-open .gc-order-acc__chev{transform:rotate(180deg)}
.gc-order-acc__body{padding:0 20px}
.gc-order-acc__body .gc-order-card__actions{border-top:1px solid var(--hairline);padding:14px 0}

/* Zwroty i odstąpienia */
.gc-returns__legal{display:flex;gap:12px;padding:14px 16px;border-radius:12px;background:var(--bg-warm);border:1px solid var(--border);font-size:12.5px;color:var(--muted);line-height:1.6;margin-bottom:16px}
.gc-returns__legal svg{color:var(--muted);flex:none}
.gc-returns__legal strong{color:var(--ink)}
.gc-returns__deadline{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--green-dark)}
.gc-returns__form{padding:16px 0 18px}
.gc-returns__label{font-size:13px;font-weight:700;color:var(--ink);margin:0 0 8px}
.gc-returns__items{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}
.gc-returns__item{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1.5px solid var(--border);border-radius:12px;cursor:pointer;transition:all .15s}
.gc-returns__item:has(input:checked){background:var(--bg-warm);border-color:var(--indigo)}
.gc-returns__item input{position:absolute;opacity:0;pointer-events:none}
.gc-returns__check{width:22px;height:22px;border-radius:6px;border:2px solid var(--border-strong);background:#fff;display:grid;place-items:center;color:#fff;flex:none}
.gc-returns__item input:checked+.gc-returns__check{background:var(--indigo);border-color:var(--indigo)}
.gc-returns__thumb img{width:44px;height:44px;border-radius:9px;object-fit:cover;background:var(--bg-warm);border:1px solid var(--border)}
.gc-returns__iteminfo{flex:1;min-width:0}
.gc-returns__iteminfo .gc-order-card__variant{margin-top:2px}
.gc-returns__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.gc-returns__select{width:100%;height:46px;padding:0 14px;border:1.5px solid var(--border);border-radius:var(--r-md);font-size:14px;background:#fff;color:var(--ink)}
.gc-returns__foot{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}

/* Tooltip „zwrot po terminie" */
.gc-btn.is-disabled{opacity:.45;cursor:not-allowed;box-shadow:none}
.gc-tipwrap{position:relative;display:inline-flex}
.gc-tip{position:absolute;bottom:calc(100% + 9px);right:0;width:230px;background:var(--indigo);color:#fff;font-size:12px;
  line-height:1.45;font-weight:500;padding:10px 12px;border-radius:10px;box-shadow:var(--shadow-soft);
  opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .15s,transform .15s,visibility .15s;z-index:30}
.gc-tip::after{content:"";position:absolute;top:100%;right:20px;border:6px solid transparent;border-top-color:var(--indigo)}
.gc-tipwrap:hover .gc-tip,.gc-tipwrap:focus-within .gc-tip{opacity:1;visibility:visible;transform:none}

/* Adresy — karty z przyciskiem pod danymi */
.gc-addr-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.gc-addr{background:#fff;border:1px solid var(--hairline);border-radius:16px;padding:26px;display:flex;flex-direction:column}
.gc-addr__title{font-family:var(--serif);font-size:19px;font-weight:600;color:var(--brand);margin:0 0 14px}
.gc-addr__body{font-style:normal;line-height:1.7;color:var(--text);font-size:14px;margin:0 0 18px;flex:1}
.gc-addr__edit{align-self:flex-start}

/* Treść WooCommerce w koncie — typografia, tabele, formularze, przyciski */
.gc-account__content>h2,.gc-account__content>h3,.gc-account__content .woocommerce h2,.gc-account__content .woocommerce h3{font-family:var(--serif);color:var(--brand);margin:0 0 14px}
.gc-account__content p{color:var(--text)}
/* Komunikaty WooCommerce w koncie — ikona w kółku zamiast znaku z czcionki WooCommerce
   (ten nachodził na tekst), przycisk-pigułka po prawej; ten sam język co .gc-notice w koszyku. */
.gc-account__content :is(.woocommerce-message,.woocommerce-info,.woocommerce-error){
  position:relative;list-style:none;min-height:50px;margin:0 0 16px;padding:13px 16px 13px 52px;
  border:1px solid var(--hairline);border-radius:var(--r-md);background:var(--bg-warm);color:var(--text);
  font-size:14px;line-height:1.55}
.gc-account__content :is(.woocommerce-message,.woocommerce-info,.woocommerce-error)::before{
  content:"";position:absolute;left:14px;top:12px;width:26px;height:26px;margin:0;border-radius:50%;
  background:var(--indigo) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 17v-6'/%3E%3Cpath d='M12 7h.01'/%3E%3C/svg%3E") center/15px no-repeat}
.gc-account__content .woocommerce-message{background:#F1F7EC;border-color:#CCE3BC}
.gc-account__content .woocommerce-message::before{background-color:var(--green);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m19 7-9.5 9.5L5 12'/%3E%3C/svg%3E")}
.gc-account__content .woocommerce-error{background:#FBEDEA;border-color:#F0C8C0;color:#9B3320}
.gc-account__content .woocommerce-error::before{background-color:var(--sale);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 7v6'/%3E%3Cpath d='M12 17h.01'/%3E%3C/svg%3E")}
.gc-account__content .woocommerce-error li+li{margin-top:4px}
.gc-account__content :is(.woocommerce-message,.woocommerce-info,.woocommerce-error) a:not(.button){color:inherit;font-weight:700;text-decoration:underline;text-underline-offset:2px}
.gc-account__content :is(.woocommerce-message,.woocommerce-info,.woocommerce-error) .button{
  float:right;display:inline-flex;align-items:center;justify-content:center;margin:-3px 0 -3px 14px;padding:6px 14px;
  border:1px solid currentColor;border-radius:var(--r-pill);background:#fff;color:inherit;
  font-size:12.5px;font-weight:700;line-height:1.5;text-decoration:none;white-space:nowrap;box-shadow:none}
.gc-account__content :is(.woocommerce-message,.woocommerce-info,.woocommerce-error) .button:hover{background:var(--indigo);border-color:var(--indigo);color:#fff}

/* Baner „Potwierdź adres e-mail" w Moich zamówieniach — treść z gc_account_verify_notice() (inc/account.php) */
.gc-verify{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px}
.gc-verify__body{display:flex;flex-direction:column;gap:3px;flex:1 1 260px;min-width:0}
.gc-verify__title{font-family:var(--serif);font-size:18px;font-weight:600;line-height:1.25;letter-spacing:-.01em;color:var(--brand)}
.gc-verify__text{font-size:13.5px;line-height:1.5;color:var(--muted-cool)}
.gc-account__content .woocommerce-info .button.gc-verify__btn{
  float:none;flex:none;margin:0;padding:11px 20px;border:0;border-radius:var(--r-md);background:var(--green);color:#fff;
  font-size:14px;font-weight:600;box-shadow:var(--shadow-cta);transition:background .15s}
.gc-account__content .woocommerce-info .button.gc-verify__btn:hover{background:var(--green-dark);color:#fff}
.gc-account__content .woocommerce-info:has(>.gc-verify){min-height:0;padding:18px 20px 18px 76px;border-radius:16px}
.gc-account__content .woocommerce-info:has(>.gc-verify)::before{
  left:20px;top:50%;width:40px;height:40px;margin-top:-20px;background-color:var(--lime);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231E1B50' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3.5 7 8.5 6 8.5-6'/%3E%3C/svg%3E");background-size:21px}
@media (max-width:640px){
  .gc-verify{flex-direction:column;flex-wrap:nowrap;align-items:stretch}
  .gc-verify__body{flex:none}
  .gc-account__content .woocommerce-info:has(>.gc-verify){padding:16px 16px 16px 66px}
  .gc-account__content .woocommerce-info:has(>.gc-verify)::before{left:14px;top:16px;margin-top:0}
}
.gc-account__content table.shop_table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--hairline);border-radius:14px;overflow:hidden;font-size:14px}
.gc-account__content table.shop_table th{text-align:left;padding:13px 18px;background:var(--bg-table);font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);font-weight:700}
.gc-account__content table.shop_table td{padding:14px 18px;border-top:1px solid var(--hairline);color:var(--ink)}
.gc-account__content .woocommerce-orders-table__cell-order-actions{text-align:right}
.gc-account__content .button,.gc-account__content .woocommerce-Button,.gc-account__content button[type="submit"]{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--green);color:#fff;border:0;
  border-radius:var(--r-md);padding:11px 20px;font-weight:600;font-size:14px;cursor:pointer;transition:background .15s;box-shadow:var(--shadow-cta)}
.gc-account__content .button:hover,.gc-account__content button[type="submit"]:hover{background:var(--green-dark);color:#fff}
.gc-account__content .button.view,.gc-account__content .woocommerce-button.view{background:#fff;color:var(--brand);border:1px solid var(--border-strong);box-shadow:none}
.gc-account__content form input.input-text,.gc-account__content form input[type="email"],.gc-account__content form input[type="password"],
.gc-account__content form input[type="tel"],.gc-account__content form input[type="text"],.gc-account__content form select,.gc-account__content form textarea{
  width:100%;min-height:48px;padding:0 14px;border:1.5px solid var(--border);border-radius:var(--r-md);font-size:14px;background:#fff;color:var(--ink)}
.gc-account__content form label{font-size:13px;font-weight:600;color:var(--ink);margin-bottom:6px;display:block}
.gc-account__content .woocommerce-Addresses{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:8px}
.gc-account__content .woocommerce-Address{background:#fff;border:1px solid var(--hairline);border-radius:14px;padding:20px}
.gc-account__content .woocommerce-Address address{font-style:normal;line-height:1.6;color:var(--text)}

/* ============================================================
   16k. SKLEP / ARCHIWUM (hero, filtry, siatka) — wg wzorca
   ============================================================ */
.gc-shop-page{padding-block:16px 50px}
.gc-shop-hero{padding:6px 0 4px}
.gc-shop-tabs{display:flex;gap:8px;flex-wrap:wrap;padding:18px 0 0}
.gc-shop-tab{padding:9px 18px;border-radius:var(--r-pill);font-size:13.5px;font-weight:600;background:#fff;color:var(--text);
  border:1px solid var(--border);text-decoration:none;transition:all .15s}
.gc-shop-tab:hover{border-color:var(--border-strong)}
.gc-shop-tab.is-active{background:var(--indigo);color:#fff;border-color:var(--indigo)}
.gc-shop-tab__n{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 6px;margin-left:6px;border-radius:999px;background:var(--bg-warm);color:var(--muted);font-size:11px;font-weight:700;vertical-align:middle}
.gc-shop-tab.is-active .gc-shop-tab__n{background:rgba(255,255,255,.2);color:#fff}

.gc-shop__cols{display:grid;grid-template-columns:270px minmax(0,1fr);gap:32px;align-items:start;padding-top:20px}
.gc-shop__side{position:sticky;top:24px}
.gc-shop__side-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}
.gc-shop__side-title{display:inline-flex;align-items:center;gap:8px;font-family:var(--serif);font-size:18px;font-weight:600;color:var(--ink)}
.gc-shop__side-title svg{color:var(--accent)}
.gc-shop__clear{font-size:12.5px;font-weight:600;color:var(--green-dark);text-decoration:none}
.gc-shop__apply{margin-top:14px}

/* Grupy filtrów */
.gc-fgroup{border-bottom:1px solid var(--border);padding:16px 0}
.gc-fgroup__head{width:100%;display:flex;align-items:center;justify-content:space-between;background:none;border:0;cursor:pointer;padding:0;font-size:13px;font-weight:700;color:var(--ink)}
.gc-fgroup__head svg{color:var(--muted);transition:transform .2s}
.gc-fgroup.is-collapsed .gc-fgroup__head svg{transform:rotate(-90deg)}
.gc-fgroup__body{margin-top:14px}
.gc-fgroup.is-collapsed .gc-fgroup__body{display:none}
.gc-frow{display:flex;align-items:center;gap:10px;padding:6px 0;cursor:pointer}
.gc-frow input{position:absolute;opacity:0;pointer-events:none}
.gc-frow__box{width:19px;height:19px;border-radius:5px;border:1.8px solid var(--border-strong);background:#fff;display:grid;place-items:center;color:#fff;flex:none}
.gc-frow input:checked+.gc-frow__box{background:var(--indigo);border-color:var(--indigo)}
.gc-frow__label{flex:1;font-size:13.5px;color:var(--text)}
.gc-frow__count{font-size:12px;color:var(--muted-2);font-variant-numeric:tabular-nums}
.gc-roast-dots{--roast:#8A5230;display:inline-flex;gap:3px;align-items:center}
.gc-roast-dots--1{--roast:#C9A06B}
.gc-roast-dots--3{--roast:#3A2014}
.gc-roast-dots span{width:8px;height:8px;border-radius:50%;border:1px solid #D9CDB8;background:#fff}
.gc-roast-dots span.is-on{background:var(--roast);border-color:var(--roast)}
/* Filtr „Stopień palenia": trzy równe kafle w jednym rzędzie (kropki nad nazwą); na aktywnym, granatowym
   kaflu kropki są jasne, a puste — tylko obrysowane, żeby poziom dało się odczytać */
.gc-fgroup__body--roast{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.gc-fgroup__body--roast .gc-chip{flex-direction:column;justify-content:center;gap:7px;padding:11px 6px 10px;border-radius:var(--r-md);text-align:center}
.gc-fgroup__body--roast .gc-chip:hover{border-color:var(--indigo)}
.gc-fgroup__body--roast .gc-roast-dots{gap:4px}
.gc-fgroup__body--roast .gc-roast-dots span{width:9px;height:9px}
.gc-chip.is-active .gc-roast-dots span{background:transparent;border-color:rgba(255,255,255,.45)}
.gc-chip.is-active .gc-roast-dots span.is-on{background:var(--kraft-light);border-color:var(--kraft-light)}
.gc-fprice__val{font-size:18px;margin-bottom:10px}
.gc-fprice__range{width:100%;accent-color:var(--green)}
.gc-fprice__scale{display:flex;justify-content:space-between;margin-top:4px;font-size:11px;color:var(--muted)}

/* Główna kolumna */
.gc-shop__main.is-loading{opacity:.5;pointer-events:none;transition:opacity .15s}
.gc-shop__toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.gc-shop__sort{display:inline-flex;align-items:center;gap:8px}
.gc-shop__sort select{height:40px;border-radius:var(--r-md);border:1.5px solid var(--border);padding:0 14px;font-size:13.5px;font-weight:600;color:var(--ink);background:#fff;cursor:pointer}
.gc-shop__chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.gc-shop__chip{display:inline-flex;align-items:center;gap:6px;background:var(--bg-chip);color:var(--text);font-size:12.5px;font-weight:600;
  padding:6px 10px 6px 12px;border-radius:var(--r-pill);text-decoration:none}
.gc-shop__chip:hover{background:var(--border)}
.gc-shop__chip svg{color:var(--muted)}
.gc-shop__chip-clear{font-size:12.5px;font-weight:600;color:var(--green-dark);text-decoration:none;padding:6px 4px}
.gc-shop__main ul.products{grid-template-columns:repeat(3,1fr)!important}
/* Opis kategorii pod produktami — pełna szerokość treści, kolor jak opis produktu, zwijany do ~5 linii */
.gc-term-desc{margin-top:56px;padding-top:40px;border-top:1px solid var(--hairline)}
.gc-term-desc__body{position:relative;font-size:15px;line-height:1.7;color:var(--text);overflow:hidden;
  transition-property:max-height;transition-timing-function:cubic-bezier(.33,1,.68,1)}
.gc-term-desc__body::after{content:"";position:absolute;left:0;right:0;bottom:0;height:96px;pointer-events:none;
  background:linear-gradient(to bottom,rgba(255,255,255,0),var(--bg) 92%);opacity:0;transition:opacity .35s ease}
.gc-term-desc.is-collapsed .gc-term-desc__body{max-height:8.5em}
.gc-term-desc.is-collapsed .gc-term-desc__body::after{opacity:1}
.gc-term-desc__body>:first-child{margin-top:0}
.gc-term-desc__body>:last-child{margin-bottom:0}
.gc-term-desc__body p{margin:0 0 16px}
.gc-term-desc__body h2,.gc-term-desc__body h3,.gc-term-desc__body h4{font-family:var(--serif);font-weight:600;color:var(--ink);line-height:1.25;letter-spacing:-.2px;margin:28px 0 10px}
.gc-term-desc__body h2{font-size:22px}
.gc-term-desc__body h3{font-size:18px}
.gc-term-desc__body h4{font-size:16px}
.gc-term-desc__body strong,.gc-term-desc__body b{color:var(--ink)}
.gc-term-desc__body a{color:var(--brand);text-decoration:underline;text-underline-offset:2px}
.gc-term-desc__body ul,.gc-term-desc__body ol{margin:0 0 16px;padding-left:22px}
.gc-term-desc__body li{margin-bottom:6px}
.gc-term-desc__body img{max-width:100%;height:auto;border-radius:var(--r-md)}
.gc-term-desc__toggle{display:flex;align-items:center;gap:8px;margin:18px auto 0;padding:11px 22px;border-radius:var(--r-pill);
  background:#fff;border:1px solid var(--border-strong);color:var(--brand);font-family:var(--sans);font-size:14px;font-weight:600;cursor:pointer;
  transition:border-color var(--transition),background var(--transition)}
.gc-term-desc__toggle:hover{border-color:var(--brand)}
.gc-term-desc__toggle[hidden]{display:none}
.gc-term-desc__toggle svg{flex:none;transition:transform .3s cubic-bezier(.33,1,.68,1)}
.gc-term-desc__toggle[aria-expanded="true"] svg{transform:rotate(180deg)}
.gc-shop__empty{text-align:center;padding:60px 20px;background:#fff;border-radius:16px;border:1px solid var(--hairline)}
.gc-shop__pagination{display:flex;justify-content:center;gap:6px;margin-top:28px}
.gc-shop__pagination .page-numbers{display:grid;place-items:center;min-width:40px;height:40px;padding:0 8px;border-radius:var(--r-md);
  border:1px solid var(--border);background:#fff;color:var(--ink);text-decoration:none;font-weight:600;font-size:14px}
.gc-shop__pagination .page-numbers.current{background:var(--indigo);color:#fff;border-color:var(--indigo)}
.gc-shop__pagination .page-numbers:hover{border-color:var(--border-strong)}

/* Kropki palenia w karcie produktu */
.gc-card__roast{display:inline-flex;align-items:center;gap:3px;flex:none;height:16.5px}
.gc-card__metarow{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}

/* ============================================================
   17. RESPONSYWNOŚĆ
   ============================================================ */
@media(max-width:1100px){
  .gc-grid--4{grid-template-columns:repeat(2,1fr)}
  .gc-grid--5{grid-template-columns:repeat(3,1fr)}
  .gc-product{grid-template-columns:1fr;gap:28px}
  .gc-cart{grid-template-columns:1fr}
  /* minmax(0,1fr), bo `1fr` nie zejdzie poniżej min-content dziecka — karta kuponu
     rozpychała wtedy całą kolumnę i koszyk wychodził poza ekran na wąskich telefonach */
  .gc-cart-grid{grid-template-columns:minmax(0,1fr)}
  .gc-cart-col,.gc-summary-rail{min-width:0}
  .gc-checkout__cols{grid-template-columns:1fr}
  .gc-checkout__rail{position:static}
  .gc-account{grid-template-columns:1fr}
  .gc-account-nav{position:static}
  .gc-acards{grid-template-columns:1fr 1fr}
  .gc-shop__cols{grid-template-columns:1fr}
  .gc-shop__side{position:static;border:1px solid var(--hairline);border-radius:14px;padding:16px;background:#fff}
  .gc-shop__main ul.products{grid-template-columns:repeat(2,1fr)!important}
  .woocommerce ul.products,ul.products{grid-template-columns:repeat(3,1fr)}
  .gc-corder__item{grid-template-columns:48px minmax(0,1fr) 110px 120px}
  .gc-pdp{grid-template-columns:1fr;gap:28px}
  .gc-pdp-desc__grid,.gc-pdp-spec__grid{grid-template-columns:1fr;gap:28px}
  .gc-pdp-desc__aside{position:static}
  .gc-pdp-brew__grid--3,.gc-pdp-brew__grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gc-pdp-nav__ask-txt{display:none}
  .gc-pdp-reviews{grid-template-columns:1fr;gap:24px}
  .gc-pdp-reviews__summary{position:static}
  .gc-pdp-spec__row{grid-template-columns:160px 1fr}
  /* gallery-wrap bylo sticky takze w ukladzie 1-kolumnowym i zaslanialo przycisk dodania do koszyka */
  .gc-pdp__gallery,.gc-pdp__gallery-wrap{position:static}
  .gc-summary-rail{position:static}
  .gc-footer__grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
  :root{--fs-display:40px;--fs-h1:30px;--fs-h2:26px;--gutter:18px}
  .gc-section__head{flex-wrap:wrap;align-items:flex-start;gap:14px 20px}
  .gc-grid--4,.gc-grid--5{grid-template-columns:1fr 1fr}
  .gc-header__row{grid-template-columns:auto auto;row-gap:12px;gap:14px}
  .gc-search{grid-column:1/-1;order:3;max-width:none}
  .gc-header__actions{justify-self:end;gap:10px}
  .gc-action__lines{display:none}
  .gc-action--cart .gc-action__lines{display:flex}
  .gc-action--brandon,.gc-wishpop{display:none}
  .gc-utility__group--contact{display:none}
  .gc-utility__row{justify-content:center;padding-block:7px}
  .gc-utility__group--info{flex:0 1 auto;flex-wrap:nowrap;max-height:none;max-width:100%;overflow-x:auto;scrollbar-width:none;font-size:11px;gap:14px}
  .gc-utility__group--info::-webkit-scrollbar{display:none}
  .gc-catnav{display:none}
  .gc-hamburger{display:inline-flex}
  .gc-minicart__panel,.gc-wishpop__panel,.gc-acctpop__panel{display:none}
  .gc-footer__grid{grid-template-columns:1fr 1fr}
  .gc-newsletter__form{min-width:0;max-width:none}
  .gc-newsletter__title{font-size:22px}
  .gc-atc-sticky{display:block}
  .gc-hero__bg::after,.gc-hero__overlay{background:linear-gradient(180deg,rgba(30,27,80,.35),var(--indigo) 92%)}
  .gc-slider{height:auto;min-height:460px}
  .gc-slide__title{font-size:40px}
  .gc-slider__grad{background:linear-gradient(180deg,rgba(30,27,80,.25),var(--indigo) 88%)!important}
  .gc-utility__row,.gc-breadcrumb,.gc-pdp,.gc-cart-page,.gc-checkout-page{padding-inline:18px}
  .gc-cartcard__head{display:none}
  .gc-cartrow{grid-template-columns:1fr;gap:10px}
  .gc-cartrow__sub{text-align:left}
  .gc-pdp__specs,.gc-delivery__grid,.gc-trustgrid,.gc-variants--3{grid-template-columns:1fr 1fr}
  .gc-trust__grid{grid-template-columns:1fr 1fr;gap:20px}
  .gc-trust__card+.gc-trust__card{padding-left:0;border-left:0}
  .gc-ship-grid{grid-template-columns:1fr}
  .woocommerce ul.products,ul.products{grid-template-columns:1fr 1fr}
  .gc-pdp-brew__grid{grid-template-columns:1fr}
  .gc-pdp-brew__grid--1{max-width:none}
  .gc-pdp-brew__title{font-size:30px}
  .gc-pdp{padding-bottom:40px}
  .gc-delivery3{grid-template-columns:1fr}
  .gc-acards{grid-template-columns:1fr}
  .gc-order-card__item{grid-template-columns:40px minmax(0,1fr) auto}
  .gc-returns__grid{grid-template-columns:1fr}
  .gc-addr-grid{grid-template-columns:1fr}
  .gc-account__content .woocommerce-Addresses{grid-template-columns:1fr!important}
  .gc-account__content form .form-row-first,.gc-account__content form .form-row-last{width:100%;margin-right:0}
  .gc-pdp-main>.woocommerce-breadcrumb{padding:14px 18px 10px}
  .gc-pdp-nav{display:none}
  .gc-pdp-sticky__name{font-size:14px}
  .gc-pdp-sticky__price{font-size:18px}
  .gc-corder__item{grid-template-columns:44px minmax(0,1fr) auto;row-gap:8px}
  .gc-corder__qtystepper{grid-column:2;justify-self:start}
  .gc-corder__price{grid-column:3}
  .gc-checkout .woocommerce-billing-fields__field-wrapper,
  .gc-checkout .woocommerce-shipping-fields__field-wrapper,
  .gc-checkout .woocommerce-additional-fields__field-wrapper{grid-template-columns:1fr}
  .gc-checkout-page{max-width:none}
  .gc-pdp__gallery{flex-direction:column-reverse}
  .gc-pdp__thumbs{flex-direction:row;width:auto;overflow-x:auto}
  .gc-cart-head{flex-direction:column;align-items:flex-start;gap:16px}
  /* Kroki mieszczą się w szerokości (scale() nie zmniejszał miejsca w układzie → przewijanie w bok) */
  .gc-stepper{width:100%;min-width:0}
  .gc-stepper__step{gap:8px;min-width:0}
  .gc-stepper__num{width:26px;height:26px;flex:none;font-size:12px}
  .gc-stepper__lbl{font-size:12.5px;white-space:nowrap}
  .gc-stepper__sub{display:none}
  .gc-stepper__line{flex:1 1 auto;width:auto;min-width:12px;max-width:56px;margin:0 10px}
  /* Quick-view jako dolny arkusz */
  .gc-qv-overlay{padding:0;align-items:flex-end}
  .gc-qv-stack{width:100%}
  .gc-qv-ship{top:auto;bottom:calc(100% + 10px);padding-right:14px}
  .gc-qv-ship__bar{min-width:150px}
  .gc-qv-ship__cta{display:none}
  .gc-qv__added-l{display:none}
  .gc-qv__added-s{display:inline}
  .gc-qv{grid-template-columns:1fr;width:100%;max-height:calc(92vh - 70px);border-radius:var(--r-xl) var(--r-xl) 0 0;transform:translateY(100%)}
  .gc-qv-overlay.is-open .gc-qv{transform:none}
  .gc-qv__media{padding:20px;max-height:200px}
  .gc-qv__media img{max-height:160px}
  .gc-qv__body{padding:20px}
  .gc-qv__title{font-size:24px}
}

/* ============================================================
   16l. SUBSKRYPCJA — landing Gorilla Coffee Club
   ============================================================ */
.gc-sub{--sub-navy:var(--indigo);background:var(--bg)}

/* HERO */
/* HERO 2-kolumnowy (treść + obraz z plakietkami) */
.gc-sub-hero2{background:radial-gradient(900px 500px at 85% 0%,#2A2470,var(--indigo));color:#fff;overflow:hidden}
.gc-sub-hero2__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;padding-top:64px;padding-bottom:72px}
.gc-sub-hero2__eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(228,236,191,.12);border:1px solid rgba(228,236,191,.3);color:var(--lime);font-weight:700;font-size:11px;letter-spacing:.18em;text-transform:uppercase;padding:8px 14px;border-radius:999px}
.gc-sub-hero2__eyebrow svg{flex:none}
.gc-sub-hero2__title{font-family:var(--serif);font-size:clamp(38px,5vw,58px);font-weight:500;line-height:1.03;letter-spacing:-.025em;margin:22px 0 0;text-wrap:balance}
.gc-sub-hero2__title em{font-style:italic;color:var(--lime)}
.gc-sub-hero2__sub{font-size:18px;line-height:1.55;color:rgba(255,255,255,.82);margin:20px 0 0;max-width:500px}
.gc-sub-hero2__actions{display:flex;align-items:center;gap:16px;margin-top:30px;flex-wrap:wrap}
.gc-sub-hero2__actions .gc-btn{display:inline-flex;align-items:center;gap:10px;padding:16px 30px;border-radius:12px;font-size:16px}
.gc-sub-hero2__actions .gc-btn svg{flex:none}
.gc-sub-hero2__link{color:#fff;font-size:14.5px;font-weight:600;opacity:.9;text-decoration:none}
.gc-sub-hero2__link:hover{opacity:1;color:#fff}
.gc-sub-hero2__meta{display:flex;align-items:center;gap:20px;margin-top:34px;flex-wrap:wrap;font-size:13.5px;color:rgba(255,255,255,.85)}
.gc-sub-hero2__rating{display:inline-flex;align-items:center;gap:8px}
.gc-sub-hero2__stars{display:inline-flex;color:var(--green)}
.gc-sub-hero2__stars svg{flex:none}
.gc-sub-hero2__meta strong{color:#fff}
.gc-sub-hero2__sep{width:1px;height:22px;background:rgba(255,255,255,.2)}
.gc-sub-hero2__media{position:relative;display:flex;justify-content:center;align-items:center;min-height:340px}
.gc-sub-hero2__glow{position:absolute;width:380px;height:380px;border-radius:50%;background:radial-gradient(circle,rgba(228,236,191,.18),transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%)}
.gc-sub-hero2__img{width:78%;max-width:360px;object-fit:contain;filter:drop-shadow(0 30px 50px rgba(0,0,0,.4));position:relative;z-index:2}
.gc-sub-hero2__badge{position:absolute;z-index:3;background:#fff;color:var(--indigo);border-radius:14px;padding:11px 15px;box-shadow:0 12px 28px rgba(0,0,0,.25)}
.gc-sub-hero2__badge b{display:block;font-family:var(--serif);font-size:24px;font-weight:700;color:var(--green-dark);line-height:1}
.gc-sub-hero2__badge i{display:block;font-style:normal;font-size:11px;color:var(--muted);font-weight:600;margin-top:2px}
.gc-sub-hero2__badge--disc{top:28px;left:6px;transform:rotate(-5deg)}
.gc-sub-hero2__badge--ship{bottom:36px;right:0;transform:rotate(4deg);display:flex;align-items:center;gap:10px}
.gc-sub-hero2__badge--ship svg{flex:none;color:var(--green-dark)}
.gc-sub-hero2__badge--ship b{font-family:var(--sans);font-size:13px;color:var(--indigo)}

/* TRUST BAR */
.gc-sub-trust{background:#fff;border-bottom:1px solid var(--border)}
.gc-sub-trust__row{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;padding:22px 0}
.gc-sub-trust__pill{display:inline-flex;align-items:center;gap:9px;font-size:13.5px;font-weight:600;color:var(--ink);background:var(--bg-warm);border:1px solid var(--border);padding:9px 16px;border-radius:var(--r-pill)}
.gc-sub-trust__pill svg{color:var(--green-dark);flex:none}
.gc-sub-trust__pill--hl{background:var(--lime);border-color:transparent;color:var(--indigo)}
.gc-sub-trust__pill--hl svg{color:var(--indigo)}

/* JAK TO DZIAŁA */
.gc-how{background:#fff;border:1px solid var(--border);border-radius:var(--r-xl);padding:30px 26px;position:relative;box-shadow:var(--shadow-card)}
.gc-how__num{font-family:var(--mono,monospace);font-size:13px;font-weight:600;color:var(--green-dark);letter-spacing:1px}
.gc-how__ic{display:flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:16px;background:var(--bg-chip);color:var(--brand);margin:14px 0 16px}
.gc-how__title{font-family:var(--serif);font-weight:600;font-size:20px;color:var(--brand);line-height:1.25;margin-bottom:8px}
.gc-how__desc{font-size:14.5px;color:var(--muted);line-height:1.6}

/* KONFIGURATOR 5-krokowy (.gc-b) */
.gc-b{display:grid;grid-template-columns:1.5fr 1fr;gap:28px;align-items:start}
.gc-b__loading{grid-column:1/-1;padding:48px;text-align:center;color:var(--muted)}
.gc-b__controls{background:#FBF8F2;border:1px solid var(--border);border-radius:18px;padding:28px;display:flex;flex-direction:column;gap:26px}
.gc-b__stephead{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.gc-b__num{width:24px;height:24px;border-radius:50%;background:var(--indigo);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex:none}
.gc-b__title{font-size:14.5px;font-weight:700;color:var(--ink)}
.gc-b__hint{font-size:12px;color:var(--muted);margin-left:auto}
.gc-b__i{flex:none}

/* Chipy */
.gc-b__chips{display:flex;flex-wrap:wrap;gap:8px}
.gc-b__chip{display:inline-flex;align-items:center;gap:6px;padding:10px 15px;border-radius:999px;font-size:13.5px;font-weight:600;background:#fff;color:#3A3548;border:1.5px solid var(--border);cursor:pointer;font-family:var(--sans);transition:all .15s}
.gc-b__chip:hover{border-color:var(--indigo)}
.gc-b__chip.is-on{background:var(--indigo);color:#fff;border-color:var(--indigo)}
.gc-b__chip.is-on .gc-b__i{color:var(--lime)}

/* Radia (kto wybiera) */
.gc-b__radios{display:flex;flex-direction:column;gap:8px}
.gc-b__radio{display:flex;align-items:center;gap:11px;padding:13px 15px;border-radius:12px;border:1.5px solid var(--border);background:#fff;color:var(--ink);text-align:left;cursor:pointer;font-family:var(--sans);transition:all .15s}
.gc-b__radio:hover{border-color:var(--indigo)}
.gc-b__radio.is-on{background:var(--indigo);color:#fff;border-color:var(--indigo)}
.gc-b__dot{width:19px;height:19px;border-radius:50%;border:2px solid var(--border-strong);flex:none;position:relative;transition:border-color .15s}
.gc-b__radio.is-on .gc-b__dot{border-color:var(--lime)}
.gc-b__radio.is-on .gc-b__dot::after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--lime)}
.gc-b__rlab{flex:1;min-width:0}
.gc-b__rlab b{display:block;font-size:14px;font-weight:700}
.gc-b__rlab i{display:block;font-style:normal;font-size:11.5px;color:var(--muted);margin-top:1px}
.gc-b__radio.is-on .gc-b__rlab i{color:rgba(255,255,255,.78)}

/* Siatka 2-kol (smak/rozmiar) */
.gc-b__grid2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.gc-b__fcard,.gc-b__scard{display:flex;flex-direction:column;gap:3px;padding:13px 14px;border-radius:12px;border:1.5px solid var(--border);background:#fff;color:var(--ink);text-align:left;cursor:pointer;font-family:var(--sans);transition:all .15s}
.gc-b__fcard:hover,.gc-b__scard:hover{border-color:var(--indigo)}
.gc-b__fcard.is-on,.gc-b__scard.is-on{background:var(--indigo);color:#fff;border-color:var(--indigo)}
.gc-b__fcard b,.gc-b__scard b{font-size:13.5px;font-weight:700}
.gc-b__fcard i,.gc-b__scard i{font-style:normal;font-size:11.5px;font-weight:600;color:var(--muted)}
.gc-b__fcard.is-on i{color:var(--lime)}
.gc-b__scard i{font-weight:400}
.gc-b__scard.is-on i{color:rgba(255,255,255,.78)}
.gc-b__goldhint{font-size:11.5px;color:var(--muted);line-height:1.5;margin:10px 0 0}
/* Na dole kreatora: kawy rotacji wybranej ścieżki (tryby „palarnia dobiera" / „zmieniam przed wysyłką") */
.gc-b__rot{padding:20px;border-radius:14px;background:#fff;border:1.5px solid var(--border)}
.gc-b__rot .gc-b__pk-intro{margin:0 0 14px}
.gc-b__num--ic{background:var(--lime);color:var(--indigo)}
.gc-b__rot-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.gc-b__rot .gc-b__rot-item{background:var(--bg-warm)}
.gc-b__rot-notes{font-size:11.5px;color:var(--text);margin-top:3px;line-height:1.4}
@media (max-width:640px){.gc-b__rot{padding:16px}.gc-b__rot-grid{grid-template-columns:1fr}.gc-b__rot .gc-b__hint{display:none}}
.gc-b__pk-intro{font-size:12.5px;color:var(--muted);line-height:1.5;margin:-4px 0 12px}

/* Notice (ostrzeżenie parzenie×smak) */
.gc-b__notice{display:flex;gap:10px;margin-top:12px;background:#FBF1DD;border:1px solid #B8791C;border-radius:12px;padding:14px 16px}
.gc-b__notice>.gc-b__i{color:#B8791C;flex:none;margin-top:1px}
.gc-b__notice-in{flex:1}
.gc-b__notice-t{font-size:13.5px;font-weight:700;color:var(--brown)}
.gc-b__notice-b{font-size:12.5px;color:#3A3548;line-height:1.5;margin:5px 0 0}
.gc-b__notice-acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.gc-b__notice-btn{padding:8px 13px;border-radius:9px;font-size:12.5px;font-weight:600;background:#fff;color:var(--ink);border:1.5px solid var(--border-strong);cursor:pointer;font-family:var(--sans)}
.gc-b__notice-btn--primary{background:var(--indigo);color:#fff;border-color:var(--indigo);font-weight:700}

/* Picker (wybór konkretnych kaw) */
.gc-b__picker{display:flex;flex-direction:column;gap:8px;max-height:360px;overflow-y:auto;padding-right:4px}
.gc-b__pk{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:11px;border:1.5px solid var(--border);background:#fff}
.gc-b__pk.is-on{border-color:var(--indigo);background:#FBF8F2}
.gc-b__pk-img{width:34px;height:44px;object-fit:contain;flex:none}
.gc-b__pk-body{flex:1;min-width:0}
.gc-b__pk-top{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.gc-b__pk-name{font-size:12.5px;font-weight:700;color:var(--ink)}
.gc-b__pk-meta{font-size:10.5px;color:var(--muted);margin-top:2px}
.gc-b__pk-packs{display:flex;gap:5px;margin-top:6px;flex-wrap:wrap}
.gc-b__pk-pack{padding:3px 9px;border-radius:999px;font-size:10.5px;font-weight:700;background:#fff;color:var(--muted);border:1px solid var(--border-strong);cursor:pointer;font-family:var(--sans)}
.gc-b__pk-pack.is-on{background:var(--indigo);color:#fff;border-color:var(--indigo)}
.gc-b__pk-one{font-size:10.5px;color:var(--green-dark);font-weight:700;margin-top:4px}
.gc-b__pk-add{width:30px;height:30px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:#E8F0E0;color:var(--green-dark);border:0;cursor:pointer;flex:none}
.gc-b__pk-add.is-on{background:var(--indigo);color:#fff}

/* Fit badge */
.gc-b__fit{font-size:9.5px;font-weight:700;letter-spacing:.02em;padding:2px 7px;border-radius:999px;text-transform:uppercase;white-space:nowrap}
.gc-b__fit--recommended{background:#E8F0E0;color:var(--green-dark)}
.gc-b__fit--allowed{background:#F5F0E6;color:var(--muted-cool)}
.gc-b__fit--advanced{background:#FBF1DD;color:#B8791C}
.gc-b__fit--warning{background:#F4E7DC;color:var(--brown)}

/* PODSUMOWANIE (sticky, navy) */
.gc-b__summary{position:sticky;top:96px}
.gc-b__sumcard{position:relative;overflow:hidden;background:var(--indigo);color:#fff;border-radius:18px;padding:26px;box-shadow:var(--shadow-soft)}
.gc-b__sumglyph{position:absolute;right:-30px;top:-40px;color:rgba(228,236,191,.08);pointer-events:none}
.gc-b__sumin{position:relative}
.gc-b__sumeye{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--lime);margin-bottom:6px}
.gc-b__sumplan{font-family:var(--serif);font-size:24px;font-weight:600;margin-bottom:14px}
.gc-b__sumrows{display:flex;flex-direction:column;gap:9px;font-size:13.5px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.15)}
.gc-b__sumrow{display:flex;justify-content:space-between;gap:12px}
.gc-b__sumrow>span{color:rgba(255,255,255,.7);flex:none}
.gc-b__sumrow>strong{font-weight:600;text-align:right}
.gc-b__sumsub{color:rgba(255,255,255,.7);margin-bottom:6px}
.gc-b__sumcoffee{display:flex;justify-content:space-between;gap:10px;font-size:12.5px;margin-bottom:4px}
.gc-b__sumcoffee>span:first-child{font-weight:600}
.gc-b__sumcoffee>span:last-child{color:rgba(255,255,255,.7);white-space:nowrap}
.gc-b__sumempty{font-size:12.5px;color:rgba(255,255,255,.6)}
.gc-b__sumcups{display:flex;align-items:center;gap:7px;margin-top:12px;font-size:12px;color:rgba(255,255,255,.78)}
.gc-b__sumcups .gc-b__i{color:var(--lime)}
.gc-b__sumprice{display:flex;align-items:baseline;justify-content:space-between;margin:14px 0 6px}
.gc-b__sumprice>span{font-size:13.5px;color:rgba(255,255,255,.7)}
.gc-b__sumamt{white-space:nowrap;text-align:right}
.gc-b__sumamt del{font-size:13px;color:rgba(255,255,255,.55);margin-right:8px}
.gc-b__sumamt b{font-family:var(--serif);font-size:30px;font-weight:600;font-variant-numeric:tabular-nums}
.gc-b__sumsave{margin-top:2px}
.gc-b__savepill{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--indigo);background:var(--lime);padding:4px 10px;border-radius:999px}
.gc-b__savepill .gc-b__i{color:var(--indigo)}

/* Sposób dostawy */
.gc-b__deliv{margin-top:14px}
.gc-b__deliv-lab{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.6);margin-bottom:8px}
.gc-b__deliv-opts{display:flex;gap:6px}
.gc-b__deliv-btn{flex:1;padding:9px 6px;border-radius:10px;border:1.5px solid rgba(255,255,255,.18);background:rgba(255,255,255,.04);text-align:center;cursor:pointer;color:#fff;font-family:var(--sans)}
.gc-b__deliv-btn.is-on{border-color:var(--lime);background:rgba(228,236,191,.16)}
.gc-b__deliv-name{display:block;font-size:11px;font-weight:700;line-height:1.2}
.gc-b__deliv-cost{display:block;font-size:11px;font-weight:700;color:rgba(255,255,255,.7);margin-top:3px}
.gc-b__deliv-cost.is-free{color:var(--lime)}

/* Baner dostawy */
.gc-b__ship{margin-top:10px;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.05)}
.gc-b__ship.is-free{border-color:rgba(228,236,191,.5);background:linear-gradient(100deg,rgba(100,188,81,.22),rgba(228,236,191,.14))}
.gc-b__ship-row{display:flex;align-items:center;gap:11px;padding:12px 14px}
.gc-b__ship-ic{width:36px;height:36px;border-radius:10px;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;flex:none}
.gc-b__ship.is-free .gc-b__ship-ic{background:var(--lime);color:var(--indigo)}
.gc-b__ship-body{flex:1;min-width:0}
.gc-b__ship-t{font-size:14px;font-weight:700;color:#fff;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.gc-b__ship-t .gc-b__i{color:var(--lime)}
.gc-b__ship-t del{color:rgba(255,255,255,.5);font-weight:600;margin-right:5px}
.gc-b__ship-now{color:var(--lime)}
.gc-b__ship-badge{font-size:11px;font-weight:700;color:var(--indigo);background:var(--lime);padding:1px 7px;border-radius:999px;margin-left:4px}
.gc-b__ship-s{font-size:11.5px;color:rgba(255,255,255,.75);margin-top:3px}
.gc-b__ship-s strong{color:#fff}
.gc-b__ship-bar{height:5px;background:rgba(255,255,255,.12)}
.gc-b__ship-bar i{display:block;height:100%;background:var(--green);transition:width .24s}
.gc-b__goldnote{font-size:11px;color:rgba(255,255,255,.55);margin-top:8px}

/* Walidacja */
.gc-b__valid{margin-top:14px;background:rgba(200,68,44,.15);border:1px solid rgba(255,150,130,.4);border-radius:11px;padding:12px 14px}
.gc-b__valid-msg{font-size:12.5px;color:#fff;font-weight:600;line-height:1.5}
.gc-b__valid-acts{display:flex;gap:8px;margin-top:10px}
.gc-b__valid-btn{padding:8px 13px;border-radius:9px;font-size:12px;font-weight:600;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.4);cursor:pointer;font-family:var(--sans)}
.gc-b__valid-btn--primary{background:var(--lime);color:var(--indigo);border-color:var(--lime);font-weight:700}

/* CTA + notki */
.gc-b__cta{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;margin-top:16px;background:var(--green);color:#fff;padding:15px;border-radius:12px;font-size:15.5px;font-weight:700;text-decoration:none;box-shadow:0 8px 22px rgba(100,188,81,.4);border:0;cursor:pointer;font-family:var(--sans)}
.gc-b__cta:hover{background:var(--green-dark);color:#fff}
.gc-b__cta.is-disabled{background:rgba(255,255,255,.18);box-shadow:none;cursor:not-allowed;opacity:.7}
.gc-b__reassure{display:flex;align-items:center;gap:8px;margin-top:14px;padding:10px 12px;border-radius:10px;background:rgba(228,236,191,.12);border:1px solid rgba(228,236,191,.25)}
.gc-b__reassure .gc-b__i{color:var(--lime)}
.gc-b__reassure span{font-size:12px;font-weight:600;color:#fff}
.gc-b__finenote{font-size:11px;color:rgba(255,255,255,.6);line-height:1.45;margin-top:10px;text-align:center}
/* Subskrypcja — Featured (kawy w rotacji) */
.gc-sub-featured{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.gc-sub-feat{display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);border-radius:16px;overflow:hidden;text-decoration:none;transition:box-shadow .18s,transform .18s,border-color .18s}
.gc-sub-feat:hover{border-color:var(--border-strong);box-shadow:0 14px 34px rgba(30,27,80,.09);transform:translateY(-2px)}
.gc-sub-feat__media{aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--border);background:#fff}
.gc-sub-feat__media img{width:84%;height:84%;object-fit:contain}
.gc-sub-feat__body{padding:16px;display:flex;flex-direction:column;gap:4px;flex:1}
.gc-sub-feat__origin{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.gc-sub-feat__name{font-family:var(--serif);font-size:16.5px;font-weight:600;color:var(--ink);line-height:1.2}
.gc-sub-feat__notes{font-size:12px;color:var(--brown);opacity:.85;flex:1}
.gc-sub-feat__foot{display:flex;align-items:baseline;justify-content:space-between;margin-top:10px}
.gc-sub-feat__price{font-size:12px;color:var(--muted)}
.gc-sub-feat__price strong{font-family:var(--serif);font-size:17px;color:var(--ink);font-weight:600}
.gc-sub-feat__disc{font-size:11px;font-weight:700;color:var(--green-dark)}
/* Subskrypcja — Gift (prezent) */
/* Baner „Subskrypcja na prezent": tekst / wstążka pozioma / wybór dostaw to trzy kolejne wiersze, więc treść
   nie może najść na wstążkę; treść kończy się 24 px przed wstążką pionową (60% szerokości). */
.gc-sub-gift{position:relative;display:flex;flex-direction:column;border-radius:24px;overflow:hidden;background:radial-gradient(900px 420px at 80% -10%,#3A317F,var(--indigo) 70%);color:#fff;box-shadow:0 24px 60px rgba(30,27,80,.28)}
.gc-sub-gift__ribbon-v{position:absolute;z-index:2;top:0;bottom:0;left:60%;width:56px;background:linear-gradient(180deg,var(--lime),#D2DCA6);box-shadow:0 0 18px rgba(15,13,40,.22)}
.gc-sub-gift__ribbon-h{position:relative;z-index:1;flex:none;display:block;height:56px;background:linear-gradient(90deg,var(--lime),#D2DCA6)}
.gc-sub-gift__in{position:relative;z-index:3;padding:0 calc(40% + 24px) 0 56px}
.gc-sub-gift__in>*{max-width:470px}
.gc-sub-gift__in--top{padding-top:44px;padding-bottom:28px}
.gc-sub-gift__in--bottom{padding-top:30px;padding-bottom:44px}
.gc-sub-gift__eyebrow{display:inline-flex;align-items:center;gap:8px;background:var(--lime);color:var(--indigo);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:6px 13px;border-radius:999px}
.gc-sub-gift__eyebrow svg{color:var(--indigo)}
.gc-sub-gift__title{font-family:var(--serif);font-size:34px;font-weight:500;margin:16px 0 10px;letter-spacing:-.02em;line-height:1.05}
.gc-sub-gift__title em{font-style:italic;color:var(--lime)}
.gc-sub-gift__sub{font-size:14px;color:rgba(255,255,255,.92);margin:0;line-height:1.55}
.gc-sub-gift__opts{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}
.gc-sub-gift__opt{position:relative;flex:1;min-width:82px;padding:12px;border-radius:13px;background:var(--indigo);border:1.5px solid rgba(255,255,255,.28);text-align:center}
.gc-sub-gift__opt.is-hit{background:var(--lime);border-color:var(--lime);color:var(--indigo)}
.gc-sub-gift__hit{position:absolute;top:-9px;left:50%;transform:translateX(-50%);background:var(--green);color:#fff;font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:999px}
.gc-sub-gift__n{display:block;font-family:var(--serif);font-size:24px;font-weight:600;line-height:1}
.gc-sub-gift__t{display:block;font-size:12px;font-weight:600;margin-top:3px}
.gc-sub-gift__h{display:block;font-size:10px;opacity:.7;margin-top:2px}
.gc-sub-gift__in .gc-btn{position:relative;z-index:3}
/* Subskrypcja — Testimonials (opinie) */
.gc-sub-testi__rate{display:inline-flex;align-items:center;gap:10px;font-size:15px;font-weight:700;color:var(--ink)}
.gc-sub-testi__rate svg{color:var(--green)}
.gc-sub-testi{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.gc-sub-testi__card{display:flex;flex-direction:column;background:var(--bg-warm);border:1px solid var(--border);border-radius:16px;padding:26px}
.gc-sub-testi__stars{display:inline-flex;gap:2px;color:var(--green)}
.gc-sub-testi__text{flex:1;font-size:14.5px;color:var(--ink);line-height:1.6;margin:14px 0 18px;overflow-wrap:anywhere}
.gc-sub-testi__who{display:flex;align-items:center;gap:11px}
.gc-sub-testi__ava{width:38px;height:38px;border-radius:50%;background:var(--indigo);color:var(--lime);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-weight:700;font-size:14px;flex:none}
.gc-sub-testi__name{font-size:13.5px;font-weight:600;color:var(--ink)}
.gc-sub-testi__city{font-size:12px;color:var(--muted)}
.gc-sub-testi__src{margin:22px 0 0;text-align:center;font-size:13px;line-height:1.6;color:var(--muted)}
.gc-sub-testi__src a{color:var(--brand);font-weight:600;white-space:nowrap}
@media(max-width:900px){.gc-sub-featured{grid-template-columns:1fr 1fr}.gc-sub-testi{grid-template-columns:1fr}.gc-sub-gift__in{padding-left:24px;padding-right:24px}.gc-sub-gift__in--top{padding-top:32px;padding-bottom:24px}.gc-sub-gift__in--bottom{padding-top:26px;padding-bottom:32px}.gc-sub-gift__ribbon-v{display:none}}
.gc-sub-summary__note{display:flex;gap:9px;font-size:11.5px;line-height:1.5;color:var(--on-dark-soft);margin-top:14px}
.gc-sub-summary__note svg{flex:none;color:var(--lime);margin-top:1px}

/* PLANY */
.gc-sub-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:start}
.gc-sub-plan{position:relative;background:#fff;border:1px solid var(--border);border-radius:var(--r-xl);padding:30px 26px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow-card);transition:box-shadow var(--transition),transform var(--transition)}
.gc-sub-plan:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-3px)}
.gc-sub-plan.is-popular{border-color:var(--indigo);box-shadow:var(--shadow-soft);transform:scale(1.02)}
.gc-sub-plan__badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);white-space:nowrap;background:var(--indigo);color:var(--lime);font-size:11.5px;font-weight:700;letter-spacing:.4px;padding:6px 16px;border-radius:var(--r-pill)}
.gc-sub-plan__name{font-family:var(--serif);font-weight:600;font-size:23px;color:var(--brand)}
.gc-sub-plan__tagline{font-size:14px;color:var(--muted);line-height:1.55;min-height:44px}
.gc-sub-plan__price{display:flex;align-items:baseline;gap:7px;margin-top:4px}
.gc-sub-plan__price span{font-size:13px;color:var(--muted)}
.gc-sub-plan__price strong{font-family:var(--serif);font-weight:600;font-size:34px;color:var(--ink);font-variant-numeric:tabular-nums}
.gc-sub-plan__note{font-size:12px;color:var(--green-dark);font-weight:600;margin-top:-6px}
.gc-sub-plan__bullets{display:flex;flex-direction:column;gap:9px;padding:14px 0;border-top:1px solid var(--border);margin-top:4px}
.gc-sub-plan__bullets>div{display:flex;gap:10px;font-size:13.5px;color:var(--text);line-height:1.45}
.gc-sub-plan__check{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:rgba(100,188,81,.15);color:var(--green-dark);flex:none;margin-top:1px}
.gc-sub-plan__rot{font-size:12px;color:var(--muted);line-height:1.5;background:var(--bg-chip);border-radius:var(--r-sm);padding:10px 12px}
.gc-sub-plan__rot strong{color:var(--brand)}

/* Plany — opcje specjalne (Custom + Soft) */
.gc-sub-special__eyebrow{text-align:center;margin:44px 0 22px;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.gc-sub-special{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:760px;margin:0 auto;align-items:stretch}
.gc-sub-special__card{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);border-radius:var(--r-xl);padding:28px 26px}
.gc-sub-special__card--custom{background:#F3F2F8;border:1.5px solid var(--indigo)}
.gc-sub-special__card--soft{background:#F4F8EC;border:1px solid var(--border)}
.gc-sub-special__badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);white-space:nowrap;color:#fff;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:5px 14px;border-radius:var(--r-pill)}
.gc-sub-special__badge--navy{background:var(--indigo)}
.gc-sub-special__badge--green{background:var(--green-dark)}
.gc-sub-special__name{font-family:var(--serif);font-weight:600;font-size:24px;color:var(--accent);margin:4px 0 6px}
.gc-sub-special__tagline{font-size:13.5px;color:var(--muted);line-height:1.5;margin:0 0 4px}
.gc-sub-special__extra{font-size:12.5px;color:var(--muted-2);line-height:1.5;margin:0 0 16px}
.gc-sub-special__pricelabel{font-family:var(--serif);font-size:24px;font-weight:600;color:var(--accent);margin-bottom:3px}
.gc-sub-special__price{display:flex;align-items:baseline;gap:7px;margin-bottom:3px}
.gc-sub-special__price span{font-size:13px;color:var(--muted)}
.gc-sub-special__price strong{font-family:var(--serif);font-weight:600;font-size:28px;color:var(--ink);font-variant-numeric:tabular-nums}
.gc-sub-special__pricenote{font-size:11.5px;color:var(--muted);margin-bottom:18px;line-height:1.45}
.gc-sub-special__bullets{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}
.gc-sub-special__bullets>div{display:flex;gap:9px;align-items:flex-start;font-size:13.5px;color:var(--text);line-height:1.4}
.gc-sub-special__card .gc-btn{margin-top:auto}
.gc-sub-plan .gc-btn{margin-top:auto}

/* FAQ */
.gc-acc{display:flex;flex-direction:column;gap:12px}
.gc-faq{background:#fff;border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden}
.gc-faq__q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;background:none;border:0;cursor:pointer;padding:18px 22px;font-family:var(--serif);font-weight:600;font-size:16.5px;color:var(--brand)}
.gc-faq__chev{color:var(--muted);transition:transform var(--transition);flex:none}
.gc-faq[data-gc-acc-item].is-open .gc-faq__chev{transform:rotate(180deg)}
.gc-faq__a{padding:0 22px 20px;font-size:14.5px;color:var(--muted);line-height:1.65}

/* FINAL CTA */
.gc-sub-final{background:linear-gradient(150deg,var(--brand),var(--indigo-deep));padding:72px 0;text-align:center}

@media (max-width:980px){
  .gc-b{grid-template-columns:1fr}
  .gc-b__summary{position:static}
  .gc-sub-hero2__grid{grid-template-columns:1fr;gap:28px;padding-top:52px;padding-bottom:56px}
  .gc-sub-hero2__media{min-height:300px;order:-1}
  .gc-sub-special{grid-template-columns:1fr;max-width:440px}
  .gc-sub-plans{grid-template-columns:1fr;max-width:440px;margin-inline:auto}
  .gc-sub-plan.is-popular{transform:none}
  .gc-section .gc-grid[style*="repeat(3"]{grid-template-columns:1fr!important}
}
@media (max-width:560px){
  .gc-b__grid2{grid-template-columns:1fr}
  .gc-b__controls{padding:20px}
  .gc-sub-hero2__grid{padding-top:44px;padding-bottom:48px}
  .gc-sub-hero2__title{font-size:36px}
  .gc-sub-hero2__media{min-height:240px}
}

/* ============================================================
   16m. LOGOWANIE / REJESTRACJA / RESET HASŁA (wzorzec konta)
   ============================================================ */
.gc-auth-wrap{padding:48px 0 64px}
/* Szablon konta jest już w .gc-container (page.php) — zagnieżdżony kontener nie może zwężać treści poniżej 1256px. */
.gc-container .gc-auth-wrap{padding-inline:0;max-width:none}
.gc-auth{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:0;max-width:none;margin-inline:auto;
  background:#fff;border:1px solid var(--border);border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--shadow-soft)}


/* Panel marki */
.gc-auth__aside{position:relative;overflow:hidden;background:linear-gradient(160deg,var(--brand),var(--indigo-deep));color:#fff;padding:56px 56px 48px;display:flex;flex-direction:column}
.gc-auth__aside::after{content:"";position:absolute;right:-60px;bottom:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(100,188,81,.22),transparent 70%);pointer-events:none}
.gc-auth__eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--lime)}
.gc-auth__eyebrow svg{color:var(--lime)}
.gc-auth__title{font-family:var(--serif);font-weight:600;font-size:30px;line-height:1.1;margin:14px 0 10px;color:#fff}
.gc-auth__lead{font-size:14px;line-height:1.6;color:var(--on-dark-soft);margin-bottom:22px}
.gc-auth__perks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:13px}
.gc-auth__perks li{display:flex;align-items:flex-start;gap:12px;font-size:13.5px;line-height:1.45;color:rgba(255,255,255,.92)}
.gc-auth__perks li span{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:9px;background:rgba(255,255,255,.10);color:var(--lime);flex:none}
.gc-auth__rating{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#fff;margin-top:auto;padding-top:24px}
.gc-auth__rating svg{color:var(--lime)}
.gc-auth__back{margin-top:auto;padding-top:24px}
.gc-auth__back a{color:var(--lime);font-size:13.5px;font-weight:600}

/* Kolumna formularzy */
.gc-auth__main{padding:56px 64px 48px;display:flex;flex-direction:column}
.gc-auth__radio{position:absolute;opacity:0;pointer-events:none}
.gc-auth__tabs{display:flex;gap:6px;background:var(--bg-chip);border-radius:var(--r-pill);padding:5px;margin-bottom:26px}
.gc-auth__tab{flex:1;text-align:center;padding:10px 14px;border-radius:var(--r-pill);font-size:13.5px;font-weight:600;color:var(--muted);cursor:pointer;transition:all var(--transition);user-select:none}
.gc-auth__tab:hover{color:var(--brand)}
#gc-tab-login:checked ~ .gc-auth__tabs .gc-auth__tab--login,
#gc-tab-register:checked ~ .gc-auth__tabs .gc-auth__tab--register{background:#fff;color:var(--brand);box-shadow:var(--shadow-card)}

/* Panele — przełączane radiem (bez JS) */
.gc-auth__panel{display:block}
.gc-auth__tabs ~ .gc-auth__panel{display:none}
#gc-tab-login:checked ~ .gc-auth__panel--login,
#gc-tab-register:checked ~ .gc-auth__panel--register{display:block;animation:gcAuthFade .25s ease}
@keyframes gcAuthFade{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}

.gc-auth__heading{font-family:var(--serif);font-weight:600;font-size:24px;color:var(--brand);margin:0 0 20px}

/* Pola */
/* WooCommerce nadaje formularzom ramkę/padding/margin, przyciskowi float:left, a wierszom własne marginesy —
   zerujemy to selektorami o wyższej specyficzności niż .woocommerce form … */
.gc-auth form.woocommerce-form.login,.gc-auth form.woocommerce-form.register,.gc-auth form.woocommerce-form,.gc-auth form.lost_reset_password{border:0;padding:0;margin:0;border-radius:0}
.gc-auth .woocommerce-form .form-row,.gc-auth form .form-row{display:flex;flex-direction:column;float:none;width:auto;padding:0;margin:0 0 16px}
.gc-auth .woocommerce-form .form-row label,.gc-auth form .form-row label{font-size:12.5px;font-weight:600;line-height:1.3;color:var(--ink);margin:0 0 7px}
.gc-auth .woocommerce-form .form-row .required,.gc-auth form .form-row .required{color:var(--green-dark);visibility:visible;border:0;text-decoration:none}
.gc-auth .woocommerce-form .woocommerce-form-login__submit,.gc-auth .woocommerce-form .woocommerce-form-register__submit{float:none;margin:0}
.gc-auth .woocommerce-form .show-password-input{right:14px;opacity:.55}
.gc-auth .woocommerce-form .show-password-input:hover{opacity:.9}
.gc-auth .woocommerce-form .form-row .input-text,.gc-auth form .form-row .input-text,.gc-auth input[type=text],.gc-auth input[type=email],.gc-auth input[type=password]{
  width:100%;height:50px;box-sizing:border-box;padding:0 16px;margin:0;line-height:normal;border:1.5px solid var(--border-strong);border-radius:var(--r-md);
  background:var(--bg-warm);color:var(--ink);font-size:14.5px;font-family:var(--sans);transition:border-color var(--transition),box-shadow var(--transition),background var(--transition)}
.gc-auth .woocommerce-form .form-row .input-text:focus,.gc-auth form .form-row .input-text:focus,.gc-auth input:focus{outline:none;border-color:var(--green);background:#fff;box-shadow:0 0 0 3px rgba(100,188,81,.16)}

.gc-auth__row{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:2px 0 20px}
.gc-auth .gc-auth__remember{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:500;line-height:1.3;color:var(--text);margin:0;cursor:pointer}
.gc-auth__remember input{width:16px;height:16px;accent-color:var(--green);margin:0}
.gc-auth__lost{font-size:13px;font-weight:600;line-height:1.3;color:var(--green-dark)}
.gc-auth__lost:hover{color:var(--brand)}

.gc-auth .gc-btn--block{height:50px;font-size:15px}
.gc-auth .woocommerce-privacy-policy-text p{font-size:12.5px;line-height:1.55;color:var(--muted);margin:2px 0 18px}
.gc-auth__hint{font-size:13px;color:var(--muted);line-height:1.55;background:var(--bg-chip);border-radius:var(--r-sm);padding:12px 14px;margin:0 0 18px}
.gc-auth__switch{text-align:center;font-size:13.5px;color:var(--muted);margin:20px 0 0}
.gc-auth__link{color:var(--green-dark);font-weight:600;cursor:pointer}
.gc-auth__link:hover{color:var(--brand)}

@media (max-width:760px){
  .gc-auth{grid-template-columns:1fr}
  .gc-auth__aside{padding:30px 26px}
  .gc-auth__aside::after{display:none}
  .gc-auth__rating,.gc-auth__back{padding-top:18px}
  .gc-auth__main{padding:26px 24px}
}

/* ============================================================
   16n. KONTO → SUBSKRYPCJA (widget, karty, switch)
   ============================================================ */
/* Widget na pulpicie */
.gc-subwidget{display:flex;align-items:center;gap:16px;margin-bottom:22px;padding:18px 22px;border-radius:var(--r-lg);
  background:linear-gradient(135deg,var(--brand),var(--indigo-deep));color:#fff;text-decoration:none;transition:transform var(--transition),box-shadow var(--transition)}
.gc-subwidget:hover{transform:translateY(-2px);box-shadow:var(--shadow-soft);color:#fff}
.gc-subwidget__ic{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:12px;background:rgba(255,255,255,.12);color:var(--lime);flex:none}
.gc-subwidget__main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.gc-subwidget__label{font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--lime)}
.gc-subwidget__title{font-family:var(--serif);font-weight:600;font-size:19px;line-height:1.2}
.gc-subwidget__sub{font-size:13px;color:var(--on-dark-soft)}
.gc-subwidget__cta{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:13.5px;color:#fff;white-space:nowrap;flex:none}

.gc-subacc__note{display:flex;gap:9px;align-items:flex-start;font-size:12.5px;color:var(--muted);line-height:1.55;margin-top:18px;background:var(--bg-chip);border-radius:var(--r-sm);padding:12px 14px}
.gc-subacc__note svg{flex:none;color:var(--brand);margin-top:1px}

/* Stan pusty + wybór planu */
.gc-subempty{text-align:center;background:#fff;border:1px solid var(--border);border-radius:var(--r-xl);padding:40px 30px}
.gc-subempty__ic{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:var(--bg-chip);color:var(--brand);margin-bottom:16px}
.gc-subempty__title{font-family:var(--serif);font-weight:600;font-size:23px;color:var(--brand);margin:0 0 8px}
.gc-subempty__text{font-size:14.5px;color:var(--muted);max-width:460px;margin:0 auto 26px;line-height:1.6}
.gc-subempty__plans{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:26px;text-align:left}
.gc-subempty__plan{border:1.5px solid var(--border-strong);border-radius:var(--r-md);padding:16px 16px;display:flex;flex-direction:column;gap:6px}
.gc-subempty__plan.is-popular{border-color:var(--indigo);box-shadow:0 0 0 1px var(--indigo) inset}
.gc-subempty__plan-name{font-family:var(--serif);font-weight:600;font-size:16px;color:var(--brand)}
.gc-subempty__plan-price{font-size:13px;color:var(--muted)}
.gc-subempty__plan-price strong{font-size:18px;color:var(--ink);font-family:var(--serif)}
.gc-subempty__plan-tag{font-size:12px;color:var(--muted);line-height:1.45}

/* Karta subskrypcji */
.gc-substack{display:flex;flex-direction:column;gap:16px}
.gc-subcard{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:22px 24px;box-shadow:var(--shadow-card)}
.gc-subcard.is-expired{opacity:.86}
.gc-subcard__bar{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}
.gc-subcard__eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--green-dark)}
.gc-subcard__name{font-family:var(--serif);font-weight:600;font-size:22px;color:var(--brand);margin:5px 0 0}
.gc-subcard__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:16px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.gc-subcard__cell{display:flex;flex-direction:column;gap:4px}
.gc-subcard__k{font-size:11.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.gc-subcard__v{font-size:15px;color:var(--ink);font-weight:600}
.gc-subcard__auto{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:16px 0 4px}
.gc-subcard__autohint{font-size:12.5px;color:var(--muted);flex:1;min-width:200px}
.gc-subcard__actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding-top:16px}
.gc-subcard__spacer{flex:1}
.gc-subcard__order{font-size:13px;font-weight:600;color:var(--green-dark)}
.gc-subcard__order:hover{color:var(--brand)}

/* Switch (toggle) */
.gc-switch{display:inline-flex;align-items:center;gap:10px;cursor:pointer;user-select:none}
.gc-switch input{position:absolute;opacity:0;width:0;height:0}
.gc-switch__track{position:relative;width:44px;height:25px;border-radius:var(--r-pill);background:var(--border-strong);transition:background var(--transition);flex:none}
.gc-switch__thumb{position:absolute;top:3px;left:3px;width:19px;height:19px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform var(--transition)}
.gc-switch input:checked + .gc-switch__track{background:var(--green)}
.gc-switch input:checked + .gc-switch__track .gc-switch__thumb{transform:translateX(19px)}
.gc-switch input:disabled + .gc-switch__track{opacity:.6}
.gc-switch input:focus-visible + .gc-switch__track{box-shadow:0 0 0 3px rgba(100,188,81,.3)}
.gc-switch__label{font-size:14px;font-weight:600;color:var(--ink)}

@media (max-width:680px){
  .gc-subwidget{flex-wrap:wrap}
  .gc-subwidget__cta{width:100%;justify-content:flex-start}
  .gc-subcard__grid{grid-template-columns:1fr;gap:12px}
  .gc-subempty__plans{grid-template-columns:1fr}
}

/* ============================================================
   16o. KONTO → INGAGI KLUB (punkty lojalnościowe)
   ============================================================ */
.gc-acard--club .gc-acard__top{color:var(--green-dark)}

/* Saldo (hero) */
.gc-club-hero{position:relative;overflow:hidden;background:linear-gradient(155deg,var(--brand),var(--indigo-deep));color:#fff;border-radius:var(--r-xl);padding:30px 30px 26px;margin-bottom:24px;box-shadow:var(--shadow-soft)}
.gc-club-hero__glyph{position:absolute;right:-30px;top:-30px;color:rgba(228,236,191,.08);pointer-events:none}
.gc-club-hero__in{position:relative;display:flex;flex-direction:column}
.gc-club-hero__label{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--lime)}
.gc-club-hero__points{font-family:var(--serif);font-weight:600;font-size:54px;line-height:1;margin-top:6px}
.gc-club-hero__unit{font-size:14px;color:var(--on-dark-soft);margin-top:2px}
.gc-club-hero__progress{margin-top:18px;max-width:520px}
.gc-club-hero__bar{height:9px;border-radius:var(--r-pill);background:rgba(255,255,255,.16);overflow:hidden}
.gc-club-hero__bar span{display:block;height:100%;border-radius:var(--r-pill);background:linear-gradient(90deg,var(--green),var(--lime));transition:width .5s ease}
.gc-club-hero__hint{display:block;font-size:13px;color:var(--on-dark-soft);margin-top:9px}

.gc-club__h{margin:8px 0 16px}

/* Wygenerowane kupony */
.gc-club-coupons{background:#EEF6EC;border:1px solid #cfe8c9;border-radius:var(--r-lg);padding:18px 20px;margin-bottom:24px}
.gc-club-coupons__list{display:flex;flex-direction:column;gap:10px;margin-top:10px}
.gc-club-coupon{display:flex;align-items:center;gap:14px;background:#fff;border:1px dashed var(--green-dark);border-radius:var(--r-md);padding:12px 16px}
.gc-club-coupon__val{font-family:var(--serif);font-weight:600;font-size:18px;color:var(--green-dark)}
.gc-club-coupon__code{font-family:var(--mono,monospace);font-size:16px;font-weight:600;letter-spacing:1px;color:var(--ink);background:var(--bg-chip);padding:5px 12px;border-radius:var(--r-sm)}
.gc-club-coupon__copy{margin-left:auto;background:var(--brand);color:#fff;border:0;border-radius:var(--r-sm);padding:8px 14px;font-size:13px;font-weight:600;cursor:pointer}
.gc-club-coupon__copy:hover{background:var(--indigo)}

/* Nagrody */
.gc-club-rewards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:28px}
.gc-club-reward{display:flex;flex-direction:column;align-items:flex-start;gap:6px;background:#fff;border:1.5px solid var(--border);border-radius:var(--r-lg);padding:20px}
.gc-club-reward.is-ready{border-color:var(--green);box-shadow:0 0 0 1px var(--green) inset}
.gc-club-reward__ic{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;background:var(--bg-chip);color:var(--brand);margin-bottom:4px}
.gc-club-reward.is-ready .gc-club-reward__ic{background:rgba(100,188,81,.14);color:var(--green-dark)}
.gc-club-reward__val{font-family:var(--serif);font-weight:600;font-size:24px;color:var(--ink)}
.gc-club-reward__label{font-size:14px;color:var(--text);font-weight:500}
.gc-club-reward__cost{font-size:12.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--green-dark)}
.gc-club-reward__btn{margin-top:10px;width:100%}

/* Historia */
.gc-club-log{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;background:#fff}
.gc-club-log__empty{padding:22px;text-align:center;color:var(--muted);margin:0}
.gc-club-log__row{display:flex;align-items:center;gap:13px;padding:13px 18px;border-bottom:1px solid var(--hairline)}
.gc-club-log__row:last-child{border-bottom:0}
.gc-club-log__ic{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;flex:none}
.gc-club-log__ic--in{background:rgba(100,188,81,.14);color:var(--green-dark)}
.gc-club-log__ic--out{background:var(--bg-chip);color:var(--muted)}
.gc-club-log__reason{flex:1;font-size:14px;color:var(--ink);font-weight:500;display:flex;flex-direction:column;gap:2px}
.gc-club-log__date{font-size:12px;color:var(--muted);font-weight:400}
.gc-club-log__delta{font-family:var(--serif);font-weight:600;font-size:17px;font-variant-numeric:tabular-nums}
.gc-club-log__delta--in{color:var(--green-dark)}
.gc-club-log__delta--out{color:var(--muted)}

@media (max-width:680px){
  .gc-club-rewards{grid-template-columns:1fr}
  .gc-club-hero__points{font-size:44px}
  .gc-club-coupon{flex-wrap:wrap}
  .gc-club-coupon__copy{margin-left:0}
}

/* ============================================================
   PREZENT SUBSKRYPCYJNY (.gc-gift*) — template-gift.php
   ============================================================ */
.gc-gift-lead{text-align:center;max-width:640px;margin:0 auto 32px}
.gc-gift-lead .gc-h2{margin-top:10px}

/* HERO */
.gc-gift-hero{position:relative;background:radial-gradient(900px 520px at 82% 0%,#2A2470,var(--indigo));color:#fff;overflow:hidden}
.gc-gift-hero__seam{position:absolute;left:0;right:0;bottom:0;height:6px;background:linear-gradient(90deg,var(--brown),#B0563B,var(--brown))}
.gc-gift-hero__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;padding-top:64px;padding-bottom:76px}
.gc-gift-hero__eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(228,236,191,.12);border:1px solid rgba(228,236,191,.3);color:var(--lime);font-weight:700;font-size:11px;letter-spacing:.16em;text-transform:uppercase;padding:8px 14px;border-radius:999px}
.gc-gift-hero__title{font-family:var(--serif);font-size:clamp(36px,4.6vw,56px);font-weight:500;line-height:1.04;letter-spacing:-.025em;margin:22px 0 0;text-wrap:balance}
.gc-gift-hero__title em{font-style:italic;color:var(--lime)}
.gc-gift-hero__sub{font-size:17.5px;line-height:1.55;color:rgba(255,255,255,.82);margin:20px 0 0;max-width:520px}
.gc-gift-hero__micro{display:flex;flex-direction:column;gap:10px;margin:26px 0 0}
.gc-gift-hero__mrow{display:flex;align-items:center;gap:11px;font-size:14.5px;color:rgba(255,255,255,.92)}
.gc-gift-hero__mic{width:30px;height:30px;border-radius:9px;background:rgba(228,236,191,.14);display:flex;align-items:center;justify-content:center;flex:none;color:var(--lime)}
.gc-gift-hero__cta{display:inline-flex;align-items:center;gap:10px;margin-top:30px;padding:16px 30px;border-radius:12px;font-size:16px}
.gc-gift-hero__media{position:relative;display:flex;justify-content:center;align-items:center;min-height:260px}
.gc-gift-hero__glow{position:absolute;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(228,236,191,.16),transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%)}
.gc-gift-hero__cardwrap{position:relative;transform:rotate(-3deg);width:100%;max-width:420px}

/* KARTA PODARUNKOWA (live) */
.gc-gift-card{border-radius:16px;overflow:hidden;box-shadow:0 18px 44px rgba(30,27,80,.22);position:relative;aspect-ratio:1.6/1;min-height:200px}
.gc-gift-card__deco{position:absolute;inset:0;font-size:22px;opacity:.18;line-height:1.7;letter-spacing:14px;padding:8px;pointer-events:none;user-select:none;word-break:break-all}
.gc-gift-card__in{position:relative;padding:22px 24px;display:flex;flex-direction:column;height:100%}
.gc-gift-card__top{display:flex;align-items:center;justify-content:space-between}
.gc-gift-card__brand{font-family:var(--serif);font-size:17px;font-weight:700;letter-spacing:-.01em}
.gc-gift-card__emoji{font-size:24px;line-height:1}
.gc-gift-card__body{margin-top:14px;flex:1}
.gc-gift-card__label{font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px}
.gc-gift-card__ded{font-family:var(--serif);font-size:20px;font-weight:600;line-height:1.25;min-height:48px}
.gc-gift-card__foot{margin-top:16px;padding-top:12px;border-top:1px solid rgba(255,255,255,.22);display:flex;align-items:center;justify-content:space-between;font-size:12.5px;font-weight:600}
.gc-gift-card__foot-r{font-weight:700}

/* BUILDER */
.gc-gift-builder__loading{padding:48px;text-align:center;color:var(--muted)}
.gc-gift-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:28px;align-items:start;margin-top:8px}
.gc-gift-panel{background:#FBF8F2;border:1px solid var(--border);border-radius:18px;padding:28px}

/* STEPPER */
.gc-gift-stepper{display:flex;align-items:center;gap:0;margin-bottom:28px;flex-wrap:wrap}
.gc-gift-stepper__item{display:flex;align-items:center;gap:9px}
.gc-gift-stepper__n{width:26px;height:26px;border-radius:50%;background:#fff;color:var(--muted-2);border:1.5px solid var(--border-strong);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex:none}
.gc-gift-stepper__item.is-active .gc-gift-stepper__n,.gc-gift-stepper__item.is-done .gc-gift-stepper__n{background:var(--indigo);color:#fff;border-color:var(--indigo)}
.gc-gift-stepper__lab{font-size:13.5px;font-weight:600;color:var(--muted)}
.gc-gift-stepper__item.is-active .gc-gift-stepper__lab{font-weight:700;color:var(--ink)}
.gc-gift-stepper__bar{flex:1;min-width:20px;height:1.5px;background:var(--border);margin:0 12px}
.gc-gift-stepper__bar.is-done{background:var(--indigo)}

/* KROK — wspólne */
.gc-gift-step__h{font-family:var(--serif);font-size:22px;font-weight:600;color:var(--ink);margin:0 0 16px}
.gc-gift-flabel{font-size:13px;font-weight:700;color:var(--ink);margin:0 0 10px}
.gc-gift-note{display:flex;gap:9px;align-items:flex-start;margin-top:14px;background:var(--lime);border-radius:11px;padding:11px 14px;font-size:12.5px;color:var(--accent);line-height:1.5}
.gc-gift-note svg{flex:none;color:var(--accent)}
.gc-gift-note--tight{margin-top:12px}
.gc-gift-field{margin-bottom:18px}
.gc-gift-lbl{display:flex;align-items:baseline;justify-content:space-between;font-size:13px;font-weight:700;color:var(--ink);margin-bottom:8px}
.gc-gift-lbl span{font-size:11.5px;font-weight:500;color:var(--muted-2)}
.gc-gift-input{width:100%;height:46px;border-radius:11px;border:1.5px solid var(--border);padding:0 14px;font-size:14px;color:var(--ink);font-family:var(--sans);background:#fff;box-sizing:border-box}
.gc-gift-input:focus{outline:none;border-color:var(--indigo)}
.gc-gift-input--area{height:84px;padding:12px 14px;resize:none;line-height:1.5}
.gc-gift-grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.gc-gift-sublabel{font-size:12.5px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin:0 0 10px}
.gc-gift-hint{font-size:11.5px;color:var(--muted);margin:0 0 20px}
.gc-gift-consent{display:flex;gap:11px;align-items:flex-start;margin-top:20px;cursor:pointer;font-size:12.5px;color:#3A3548;line-height:1.5}
.gc-gift-consent input{width:18px;height:18px;accent-color:var(--green);margin-top:1px;flex:none}
.gc-gift-consent a{color:var(--green-dark);font-weight:600}

/* PACZKI */
.gc-gift-pkgs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:22px}
.gc-gift-pkg{position:relative;padding:16px 12px;border-radius:14px;border:2px solid var(--border);background:#fff;color:var(--ink);text-align:center;cursor:pointer;font-family:var(--sans);transition:all .15s}
.gc-gift-pkg:hover{border-color:var(--indigo)}
.gc-gift-pkg.is-on{background:var(--indigo);color:#fff;border-color:var(--indigo)}
.gc-gift-pkg__badge{position:absolute;top:-10px;left:50%;transform:translateX(-50%);background:var(--green);color:#fff;font-size:9.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:3px 9px;border-radius:999px}
.gc-gift-pkg__n{display:block;font-family:var(--serif);font-size:30px;font-weight:700;line-height:1}
.gc-gift-pkg__lab{display:block;font-size:12.5px;font-weight:600;margin-top:3px}
.gc-gift-pkg__hint{display:block;font-size:11px;margin-top:2px;color:var(--muted)}
.gc-gift-pkg.is-on .gc-gift-pkg__hint{color:rgba(255,255,255,.7)}
.gc-gift-pkg__price{display:block;margin-top:9px;padding-top:9px;border-top:1px solid var(--border)}
.gc-gift-pkg.is-on .gc-gift-pkg__price{border-top-color:rgba(255,255,255,.18)}
.gc-gift-pkg__price b{display:block;font-family:var(--serif);font-size:15px;font-weight:700}
.gc-gift-pkg__price i{display:block;font-style:normal;font-size:10.5px;color:var(--muted)}
.gc-gift-pkg.is-on .gc-gift-pkg__price i{color:rgba(255,255,255,.7)}

/* ŚCIEŻKI */
.gc-gift-paths{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.gc-gift-path{padding:14px 15px;border-radius:12px;border:1.5px solid var(--border);background:#fff;color:var(--ink);text-align:left;cursor:pointer;font-family:var(--sans);transition:all .15s}
.gc-gift-path:hover{border-color:var(--indigo)}
.gc-gift-path.is-on{background:var(--indigo);color:#fff;border-color:var(--indigo)}
.gc-gift-path__name{display:block;font-family:var(--serif);font-size:16px;font-weight:600;margin-bottom:5px}
.gc-gift-path__badge{display:inline-block;font-size:9.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 8px;border-radius:999px;color:#fff}
.gc-gift-path__badge--green{background:var(--green)}
.gc-gift-path__badge--navy{background:var(--indigo)}
.gc-gift-path.is-on .gc-gift-path__badge{background:rgba(255,255,255,.18)}
.gc-gift-path__desc{display:block;font-size:12px;margin-top:8px;line-height:1.45;color:var(--muted)}
.gc-gift-path.is-on .gc-gift-path__desc{color:rgba(255,255,255,.78)}
.gc-gift-path__from{display:block;font-size:12.5px;font-weight:700;margin-top:8px;color:var(--green-dark)}
.gc-gift-path.is-on .gc-gift-path__from{color:var(--lime)}

/* MOTYWY KARTY */
.gc-gift-themes{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.gc-gift-theme{border-radius:12px;border:2px solid var(--border);overflow:hidden;text-align:center;background:#fff;cursor:pointer;padding:0;font-family:var(--sans)}
.gc-gift-theme.is-on{border-color:var(--indigo)}
.gc-gift-theme__sw{display:flex;align-items:center;justify-content:center;height:52px;font-size:22px}
.gc-gift-theme__lab{display:block;font-size:12px;font-weight:600;color:#3A3548;padding:7px 0}
.gc-gift-theme.is-on .gc-gift-theme__lab{color:var(--indigo)}

/* RADIA (forma wręczenia) */
.gc-gift-radios{display:flex;flex-direction:column;gap:8px}
.gc-gift-radio{display:flex;align-items:center;gap:11px;padding:13px 15px;border-radius:12px;border:1.5px solid var(--border);background:#fff;color:var(--ink);text-align:left;cursor:pointer;font-family:var(--sans);transition:all .15s}
.gc-gift-radio:hover{border-color:var(--indigo)}
.gc-gift-radio.is-on{background:var(--indigo);color:#fff;border-color:var(--indigo)}
.gc-gift-radio__dot{width:19px;height:19px;border-radius:50%;border:2px solid var(--border-strong);flex:none;position:relative}
.gc-gift-radio.is-on .gc-gift-radio__dot{border-color:var(--lime)}
.gc-gift-radio.is-on .gc-gift-radio__dot::after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--lime)}
.gc-gift-radio__lab b{display:block;font-size:13.5px;font-weight:700}
.gc-gift-radio__lab i{display:block;font-style:normal;font-size:11.5px;color:var(--muted);margin-top:1px}
.gc-gift-radio.is-on .gc-gift-radio__lab i{color:rgba(255,255,255,.78)}

/* NAWIGACJA + PRZYCISKI */
.gc-gift-nav{display:flex;gap:12px;margin-top:24px}
.gc-gift-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 22px;border-radius:11px;font-size:14.5px;font-weight:700;cursor:pointer;font-family:var(--sans);border:0;text-decoration:none}
.gc-gift-btn--ghost{background:#fff;color:var(--indigo);border:1.5px solid var(--border-strong)}
.gc-gift-btn--navy{flex:1;background:var(--indigo);color:#fff}
.gc-gift-btn--green{flex:1;background:var(--green);color:#fff;box-shadow:0 8px 22px rgba(100,188,81,.4)}
.gc-gift-btn--green:hover{background:var(--green-dark);color:#fff}
.gc-gift-btn.is-disabled{background:rgba(30,27,80,.18);box-shadow:none;cursor:not-allowed}

/* PODSUMOWANIE (sticky navy) */
.gc-gift-aside{position:sticky;top:90px}
.gc-gift-sum{position:relative;overflow:hidden;background:var(--indigo);color:#fff;border-radius:20px;padding:26px}
.gc-gift-sum__glyph{position:absolute;right:-30px;top:-40px;color:rgba(228,236,191,.08);pointer-events:none}
.gc-gift-sum__in{position:relative}
.gc-gift-sum__eye{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--kraft);margin-bottom:6px}
.gc-gift-sum__title{font-family:var(--serif);font-size:23px;font-weight:600;margin-bottom:16px}
.gc-gift-sum__rows{display:flex;flex-direction:column;gap:9px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.15)}
.gc-gift-sum__row{display:flex;justify-content:space-between;gap:12px;font-size:13px}
.gc-gift-sum__row>span{color:rgba(255,255,255,.7);flex:none}
.gc-gift-sum__row>strong{font-weight:600;text-align:right}
.gc-gift-sum__cups{display:flex;align-items:center;gap:7px;margin-top:12px;font-size:12px;color:rgba(255,255,255,.78)}
.gc-gift-sum__cups svg{color:var(--lime);flex:none}
.gc-gift-sum__price{display:flex;align-items:baseline;justify-content:space-between;margin:14px 0 6px}
.gc-gift-sum__price>span{font-size:13.5px;color:rgba(255,255,255,.7)}
.gc-gift-sum__price>b{font-family:var(--serif);font-size:30px;font-weight:600;font-variant-numeric:tabular-nums}
.gc-gift-sum__save{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--indigo);background:var(--lime);padding:4px 10px;border-radius:999px}
.gc-gift-sum__save svg{color:var(--indigo)}
.gc-gift-sum__pledge{margin-top:14px;background:rgba(228,236,191,.12);border:1px solid rgba(228,236,191,.28);border-radius:12px;padding:12px 14px;display:flex;gap:9px;align-items:center}
.gc-gift-sum__pledge svg{color:var(--lime);flex:none}
.gc-gift-sum__pledge span{font-size:12px;font-weight:700;color:#fff;line-height:1.4}
.gc-gift-sum__cta{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;margin-top:16px;background:var(--green);color:#fff;padding:15px;border-radius:12px;font-size:15px;font-weight:700;border:0;cursor:pointer;font-family:var(--sans);box-shadow:0 8px 22px rgba(100,188,81,.4)}
.gc-gift-sum__cta:hover{background:var(--green-dark)}
.gc-gift-sum__cta.is-disabled{background:rgba(255,255,255,.18);box-shadow:none;cursor:not-allowed}
.gc-gift-sum__fine{display:flex;align-items:center;gap:8px;margin-top:14px;font-size:11.5px;color:rgba(255,255,255,.7);line-height:1.45}
.gc-gift-sum__fine svg{color:var(--lime);flex:none}
.gc-gift-preview{margin-top:16px}
.gc-gift-preview__lab{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}

/* KROK 4 — GOTOWE */
.gc-gift-done{text-align:center;padding:12px 0}
.gc-gift-done__badge{width:64px;height:64px;border-radius:50%;background:#E8F0E0;display:flex;align-items:center;justify-content:center;margin:0 auto 18px;color:var(--green-dark)}
.gc-gift-done__h{font-family:var(--serif);font-size:24px;font-weight:600;color:var(--ink);margin:0 0 8px}
.gc-gift-done__sub{font-size:14px;color:var(--muted);margin:0 0 18px;line-height:1.55}
.gc-gift-done__sub strong{color:var(--ink)}
.gc-gift-done__card{max-width:320px;margin:0 auto 22px}
.gc-gift-done__how{background:#fff;border:1px solid var(--border);border-radius:14px;padding:20px;text-align:left}
.gc-gift-done__howh{font-family:var(--serif);font-size:16px;font-weight:600;color:var(--ink);margin-bottom:14px}
.gc-gift-done__grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.gc-gift-done__step{display:flex;gap:10px;align-items:flex-start}
.gc-gift-done__ic{width:30px;height:30px;border-radius:8px;background:var(--indigo);display:flex;align-items:center;justify-content:center;flex:none;color:var(--lime)}
.gc-gift-done__t{font-size:12.5px;font-weight:700;color:var(--ink)}
.gc-gift-done__d{font-size:11px;color:var(--muted);line-height:1.4}
.gc-gift-done__acts{display:flex;gap:10px;justify-content:center;margin-top:20px}

/* JAK TO DZIAŁA — KUPUJĄCY */
.gc-gift-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.gc-gift-stepcard{background:#fff;border:1px solid var(--border);border-radius:16px;padding:24px}
.gc-gift-stepcard__n{font-family:var(--mono,monospace);font-size:13px;font-weight:600;color:var(--muted-2);letter-spacing:.1em}
.gc-gift-stepcard__ic{width:50px;height:50px;border-radius:13px;background:var(--indigo);display:flex;align-items:center;justify-content:center;margin:14px 0 16px;color:var(--lime)}
.gc-gift-stepcard__t{font-family:var(--serif);font-size:18.5px;font-weight:600;color:var(--ink);margin:0 0 7px}
.gc-gift-stepcard__d{font-size:13.5px;color:var(--muted);line-height:1.55;margin:0}

/* JAK ODBIERA — OBDAROWANY */
.gc-gift-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative}
.gc-gift-flow__step{text-align:center;padding:0 16px;position:relative}
.gc-gift-flow__ic{width:64px;height:64px;border-radius:50%;background:var(--lime);display:inline-flex;align-items:center;justify-content:center;color:var(--accent);position:relative;z-index:2;margin-bottom:16px}
.gc-gift-flow__step:not(:last-child)::after{content:"";position:absolute;top:32px;left:calc(50% + 40px);right:calc(-50% + 40px);height:2px;background:var(--border);z-index:1}
.gc-gift-flow__n{font-family:var(--mono,monospace);font-size:12px;color:var(--muted-2);margin-bottom:6px}
.gc-gift-flow__t{font-family:var(--serif);font-size:17px;font-weight:600;color:var(--ink);margin:0 0 6px}
.gc-gift-flow__d{font-size:13px;color:var(--muted);line-height:1.5;margin:0}

/* DLACZEGO */
.gc-gift-why{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.gc-gift-why__card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:28px}
.gc-gift-why__ic{width:52px;height:52px;border-radius:13px;background:#E8F0E0;display:flex;align-items:center;justify-content:center;margin-bottom:16px;color:var(--green-dark)}
.gc-gift-why__t{font-family:var(--serif);font-size:20px;font-weight:600;color:var(--ink);margin:0 0 8px}
.gc-gift-why__d{font-size:14px;color:var(--muted);line-height:1.55;margin:0}

/* PASEK KONTAKTOWY */
.gc-gift-trust{background:var(--indigo);color:rgba(255,255,255,.85)}
.gc-gift-trust__row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 22px;padding:18px 0;font-size:12.5px}
.gc-gift-trust__dot{opacity:.4}
.gc-gift-trust__item{display:inline-flex;align-items:center}

/* RESPONSYWNOŚĆ */
@media (max-width:980px){
  .gc-gift-hero__grid{grid-template-columns:1fr;gap:32px;padding-top:52px;padding-bottom:60px}
  .gc-gift-hero__media{order:-1;min-height:220px}
  .gc-gift-grid{grid-template-columns:1fr}
  .gc-gift-aside{position:static}
  .gc-gift-steps{grid-template-columns:1fr 1fr}
  .gc-gift-flow{grid-template-columns:1fr 1fr;gap:32px 0}
  .gc-gift-flow__step::after{display:none}
  .gc-gift-why{grid-template-columns:1fr}
}
@media (max-width:560px){
  .gc-gift-panel{padding:20px}
  .gc-gift-pkgs{grid-template-columns:1fr}
  .gc-gift-paths,.gc-gift-grid2,.gc-gift-done__grid,.gc-gift-steps,.gc-gift-flow{grid-template-columns:1fr}
  .gc-gift-stepper__lab{display:none}
  .gc-gift-hero__title{font-size:34px}
}

/* Prezent — krok „Dane i płatność": FV, metody płatności, błąd */
.gc-gift-field--wide{margin-bottom:12px}
.gc-gift-invtoggle{margin:4px 0 0}
.gc-gift-invbox{margin:12px 0 4px;padding:14px;border:1px dashed var(--border-strong);border-radius:12px;background:#fff}
.gc-gift-invbox .gc-gift-field:last-child{margin-bottom:0}
.gc-gift-pays{display:flex;flex-direction:column;gap:8px;margin-bottom:6px}
.gc-gift-pay{display:flex;align-items:center;gap:11px;padding:13px 15px;border-radius:12px;border:1.5px solid var(--border);background:#fff;color:var(--ink);text-align:left;cursor:pointer;font-family:var(--sans);transition:all .15s}
.gc-gift-pay:hover{border-color:var(--indigo)}
.gc-gift-pay.is-on{background:var(--indigo);color:#fff;border-color:var(--indigo)}
.gc-gift-pay__dot{width:19px;height:19px;border-radius:50%;border:2px solid var(--border-strong);flex:none;position:relative}
.gc-gift-pay.is-on .gc-gift-pay__dot{border-color:var(--lime)}
.gc-gift-pay.is-on .gc-gift-pay__dot::after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--lime)}
.gc-gift-pay__lab{flex:1;min-width:0}
.gc-gift-pay__lab b{display:block;font-size:13.5px;font-weight:700}
.gc-gift-pay__lab i{display:block;font-style:normal;font-size:11.5px;color:var(--muted);margin-top:1px}
.gc-gift-pay.is-on .gc-gift-pay__lab i{color:rgba(255,255,255,.78)}
.gc-gift-pay__ic{flex:none;max-height:24px;display:flex;align-items:center}
.gc-gift-pay__ic img{max-height:22px;width:auto}
.gc-gift-err{margin-top:14px;padding:12px 14px;border-radius:11px;background:rgba(200,68,44,.1);border:1px solid rgba(200,68,44,.35);color:#a3271a;font-size:13px;font-weight:600}

/* Sklep — podkategorie (kategorie inne niż kawa) */
.gc-subcats{display:flex;flex-direction:column;gap:2px}
.gc-subcat{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border-radius:8px;font-size:13.5px;color:var(--text);text-decoration:none;transition:background .15s}
.gc-subcat:hover{background:var(--bg-warm)}
.gc-subcat.is-active{background:var(--indigo);color:#fff;font-weight:600}
.gc-subcat__n{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.gc-subcat.is-active .gc-subcat__n{color:rgba(255,255,255,.75)}

/* Quickview — skeleton (natychmiastowe otwarcie) */
@keyframes gc-shimmer{0%{background-position:100% 0}100%{background-position:-100% 0}}
.gc-qv__sk{background:linear-gradient(90deg,#ececec 25%,#f6f6f6 37%,#ececec 63%);background-size:400% 100%;animation:gc-shimmer 1.4s ease infinite;border-radius:8px}
.gc-qv--loading .gc-qv__media{background:#f3f3f3}
.gc-qv__sk--img{position:absolute;inset:0;border-radius:0}
.gc-qv__sk--title{height:26px;width:72%;margin:2px 0 14px}
.gc-qv__sk--line{height:13px;width:88%;margin-bottom:22px}
.gc-qv__sk--lbl{height:11px;width:110px;margin-bottom:9px}
.gc-qv__skgrp{margin-bottom:18px}
.gc-qv__skrow{display:flex;gap:8px}
.gc-qv__skrow span{height:40px;flex:1;border-radius:999px;background:linear-gradient(90deg,#ececec 25%,#f6f6f6 37%,#ececec 63%);background-size:400% 100%;animation:gc-shimmer 1.4s ease infinite}
.gc-qv__sk--btn{height:52px;width:100%;border-radius:12px;margin-top:10px}

/* ============================================================
   16x. BLOG (szablon „Blog (GC)") — hero, kategorie, wyróżniony wpis, siatka, szkielety
   ============================================================ */
.gc-blog-hero{padding:16px 0 8px;background:linear-gradient(180deg,var(--bg-warm),#fff)}
.gc-blog-hero__row{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;padding:20px 0 8px}
.gc-blog-hero__text{max-width:760px}
.gc-blog-hero__title{font-family:var(--serif);font-weight:500;font-size:56px;line-height:1.02;letter-spacing:-1.5px;color:var(--brand);margin:12px 0 16px;text-wrap:balance}
.gc-blog-hero__title em{font-style:italic;color:var(--green-dark)}
.gc-blog-hero__lead{font-size:17px;line-height:1.6;color:var(--muted);margin:0;max-width:620px}
.gc-blog-hero__stats{display:flex;gap:12px;flex:none}
.gc-blog-hero__stats div{display:flex;flex-direction:column;align-items:flex-start;min-width:120px;padding:16px 20px;background:#fff;border:1px solid var(--hairline);border-radius:var(--r-lg)}
.gc-blog-hero__stats strong{font-family:var(--serif);font-size:34px;font-weight:600;line-height:1;color:var(--brand)}
.gc-blog-hero__stats span{font-size:12.5px;color:var(--muted);margin-top:6px}
.gc-blog-cats{display:flex;gap:8px;flex-wrap:wrap;padding:24px 0 8px}

.gc-blog-list{padding:28px 0 72px}
.gc-blog-list__head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:56px 0 22px;padding-top:28px;border-top:1px solid var(--hairline)}
.gc-blog-list__title{font-family:var(--serif);font-weight:600;font-size:28px;letter-spacing:-.4px;color:var(--ink);margin:0}
.gc-blog-feature-wrap:empty+.gc-blog-list__head{margin-top:0;padding-top:0;border-top:0}

/* Wspólne: media z migotaniem do czasu wczytania obrazka */
.gc-blog-media{position:relative;display:block;overflow:hidden;background:var(--bg-chip)}
.gc-blog.is-js .gc-blog-media:not(.is-loaded){background:linear-gradient(90deg,#efebe3 25%,#f7f4ee 37%,#efebe3 63%);background-size:400% 100%;animation:gc-shimmer 1.4s ease infinite}
.gc-blog-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.33,1,.68,1),opacity .45s ease}
.gc-blog.is-js .gc-blog-media img{opacity:0}
.gc-blog.is-js .gc-blog-media img.is-loaded{opacity:1}
.gc-blog-media__ph{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted-2)}

.gc-blog-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;font-size:12.5px;color:var(--muted)}
.gc-blog-meta__info{display:inline-flex;align-items:center;gap:6px;font-variant-numeric:tabular-nums}
.gc-blog-pill{display:inline-flex;align-items:center;padding:4px 10px;border-radius:var(--r-pill);background:var(--lime);color:var(--brand);font-size:11.5px;font-weight:700;letter-spacing:.2px;text-decoration:none;transition:background var(--transition)}
.gc-blog-pill:hover{background:#d6e29d;color:var(--indigo)}

/* Wyróżniony wpis */
.gc-blog-feature{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);background:var(--indigo);border-radius:24px;overflow:hidden;color:#fff;box-shadow:0 24px 60px rgba(30,27,80,.18)}
.gc-blog-feature__media{min-height:420px}
.gc-blog-feature__media img{position:absolute;inset:0}
.gc-blog-feature:hover .gc-blog-feature__media img{transform:scale(1.03)}
.gc-blog-feature__body{display:flex;flex-direction:column;justify-content:center;gap:14px;padding:48px 52px}
.gc-blog-feature__eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--lime)}
.gc-blog-meta--dark{color:rgba(255,255,255,.65)}
.gc-blog-feature__title{font-family:var(--serif);font-weight:500;font-size:36px;line-height:1.12;letter-spacing:-.6px;margin:4px 0 0;text-wrap:balance}
.gc-blog-feature__title a{color:#fff;text-decoration:none}
.gc-blog-feature__title a:hover{color:var(--lime)}
.gc-blog-feature__excerpt{font-size:15.5px;line-height:1.65;color:rgba(255,255,255,.75);margin:0;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.gc-blog-feature__cta{align-self:flex-start;margin-top:10px}
.gc-blog-feature__cta svg{transition:transform .2s cubic-bezier(.4,0,.2,1)}
.gc-blog-feature__cta:hover svg{transform:translateX(4px)}

/* Siatka kart */
.gc-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 28px}
.gc-blog-card{display:flex;flex-direction:column;min-width:0}
.gc-blog-card__media{aspect-ratio:16/10;border-radius:18px}
.gc-blog-card:hover .gc-blog-card__media img{transform:scale(1.05)}
.gc-blog-card__body{display:flex;flex-direction:column;gap:10px;padding:16px 2px 0;flex:1}
.gc-blog-card__title{font-family:var(--serif);font-weight:600;font-size:21px;line-height:1.25;letter-spacing:-.2px;margin:2px 0 0;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.gc-blog-card__title a{color:var(--ink);text-decoration:none;background:linear-gradient(currentColor,currentColor) 0 100%/0 1.5px no-repeat;transition:background-size .35s ease,color .2s}
.gc-blog-card:hover .gc-blog-card__title a{color:var(--brand);background-size:100% 1.5px}
.gc-blog-card__excerpt{font-size:14.5px;line-height:1.6;color:var(--muted);margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.gc-blog-card__more{display:inline-flex;align-items:center;gap:6px;margin-top:auto;padding-top:4px;font-size:13.5px;font-weight:600;color:var(--green-dark);text-decoration:none}
.gc-blog-card__more svg{transition:transform .2s cubic-bezier(.4,0,.2,1)}
.gc-blog-card:hover .gc-blog-card__more svg{transform:translateX(4px)}

/* Wejście nowych kart */
@keyframes gc-blog-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.gc-blog-card.is-new,.gc-blog-feature.is-new{animation:gc-blog-in .5s cubic-bezier(.33,1,.68,1) both}

/* Szkielety */
.gc-blog-sk{border-radius:8px;background:linear-gradient(90deg,#efebe3 25%,#f7f4ee 37%,#efebe3 63%);background-size:400% 100%;animation:gc-shimmer 1.4s ease infinite}
.gc-blog-card--sk .gc-blog-sk--img{aspect-ratio:16/10;border-radius:18px}
.gc-blog-sk--meta{height:20px;width:55%}
.gc-blog-sk--title{height:20px;width:92%}
.gc-blog-sk--line{height:12px;width:100%}
.gc-blog-sk--short{width:60%}
.gc-blog-feature--sk{background:#f5f2ec;box-shadow:none}
.gc-blog-feature--sk .gc-blog-sk--img{min-height:420px;border-radius:0}
.gc-blog-feature--sk .gc-blog-sk--title{height:30px}

.gc-blog-more{display:flex;justify-content:center;padding-top:48px}
.gc-blog-more .gc-btn{min-width:260px}
.gc-blog-more__n{color:var(--muted);font-weight:500}
.gc-blog-pager{display:flex;gap:10px;justify-content:center;padding-top:48px}
.gc-blog-crumb{display:inline-flex;align-items:center;gap:6px}
.gc-blog-crumb[hidden]{display:none}
.gc-blog-pager[hidden],.gc-blog-more[hidden],.gc-blog-more .gc-btn[hidden]{display:none}
.gc-blog-empty{grid-column:1/-1;text-align:center;padding:48px 0;color:var(--muted)}
.gc-blog-error{text-align:center;color:var(--sale);font-weight:600;margin:24px 0 0}
.gc-blog-error__retry{background:none;border:0;color:var(--brand);font-weight:700;text-decoration:underline;cursor:pointer}

@media (max-width:1100px){
  .gc-blog-hero__title{font-size:44px}
  .gc-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gc-blog-feature{grid-template-columns:1fr}
  .gc-blog-feature__media{min-height:0;aspect-ratio:16/9}
  .gc-blog-feature__body{padding:32px}
  .gc-blog-feature--sk .gc-blog-sk--img{min-height:0;aspect-ratio:16/9}
}
@media (max-width:760px){
  .gc-blog-hero__row{flex-direction:column;align-items:flex-start;gap:20px}
  .gc-blog-hero__title{font-size:36px;letter-spacing:-.8px}
  .gc-blog-hero__lead{font-size:15.5px}
  .gc-blog-hero__stats div{min-width:0;padding:12px 16px}
  .gc-blog-hero__stats strong{font-size:26px}
  .gc-blog-cats{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1 * var(--gutter));padding-inline:var(--gutter)}
  .gc-blog-cats::-webkit-scrollbar{display:none}
  .gc-blog-cats .gc-shop-tab{flex:none}
  .gc-blog-grid{grid-template-columns:1fr;gap:32px}
  .gc-blog-feature{border-radius:18px}
  .gc-blog-feature__body{padding:24px}
  .gc-blog-feature__title{font-size:26px}
  .gc-blog-list__head{margin-top:40px}
  .gc-blog-list__title{font-size:23px}
}
@media (prefers-reduced-motion:reduce){
  .gc-blog-card.is-new,.gc-blog-feature.is-new{animation:none}
  .gc-blog-media img{transition:none}
}

/* ============================================================
   Wyszukiwarka — podpowiedzi po kliknięciu + przyciemnienie tła
   ============================================================ */
.gc-search-backdrop{position:fixed;inset:0;z-index:55;background:rgba(15,13,56,.42);opacity:0;visibility:hidden;transition:opacity .22s ease,visibility .22s}
.gc-search-backdrop.is-on{opacity:1;visibility:visible}
.gc-search-open .gc-catnav{opacity:.55;transition:opacity .22s}
@keyframes gc-suggest-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.gc-search__suggest{position:absolute;top:calc(100% + 10px);left:0;right:0;z-index:80;display:none;padding:14px;background:#fff;
  border:1px solid var(--hairline);border-radius:var(--r-lg);box-shadow:0 24px 60px rgba(15,13,56,.22);max-height:74vh;overflow:auto}
.gc-search__suggest.is-open{display:block;animation:gc-suggest-in .18s cubic-bezier(.33,1,.68,1)}
.gc-suggest__links{display:flex;flex-wrap:wrap;gap:8px;padding:2px 2px 14px;border-bottom:1px solid var(--hairline)}
.gc-suggest__chip{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:var(--r-pill);background:var(--bg-chip);color:var(--text);
  font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap;transition:background var(--transition),color var(--transition)}
.gc-suggest__chip:hover{background:var(--border);color:var(--ink)}
.gc-suggest__chip--hl{background:var(--indigo);color:#fff}
.gc-suggest__chip--hl svg{color:var(--lime)}
.gc-suggest__chip--hl:hover{background:var(--brand);color:#fff}
.gc-suggest__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 8px 6px}
.gc-suggest__title{font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}
.gc-suggest__all{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:600;color:var(--green-dark);text-decoration:none}
.gc-suggest__all svg{transition:transform .2s}
.gc-suggest__all:hover svg{transform:translateX(3px)}
.gc-suggest__price{display:none;font-family:var(--serif);font-weight:600;font-size:13.5px;color:var(--ink)}
.gc-suggest__all{white-space:nowrap}
.gc-suggest__rank{flex:none;width:18px;font-family:var(--serif);font-size:15px;font-weight:600;color:var(--muted-2);text-align:center}
@media (max-width:760px){
  .gc-search__input{font-size:16px} /* iOS nie powiększa strony przy focusie */
  .gc-search__suggest{padding:10px;max-height:68vh}
  /* Wyniki live na telefonie: pełniejsza nazwa (2 linie), cena węższa i łamana — zakres cen nie zjada nazwy */
  .gc-search__results .gc-search__row{gap:10px;padding:8px}
  .gc-search__results .gc-search__link{gap:10px}
  .gc-search__results .gc-search__desc{display:none}
  .gc-search__results .gc-search__name{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.3}
  .gc-search__results .gc-search__price{max-width:78px;white-space:normal;text-align:right;font-size:12.5px;line-height:1.25}
  .gc-search__results .gc-search__add{width:34px;height:34px}
  .gc-suggest__links{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -10px;padding:2px 10px 12px}
  .gc-suggest__links::-webkit-scrollbar{display:none}
  .gc-search__suggest .gc-search__desc,.gc-search__suggest .gc-search__price,.gc-suggest__all{display:none}
  .gc-suggest__price{display:block}
  .gc-search__suggest .gc-search__name{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
  .gc-suggest__rank{display:none}
}

/* ============================================================
   16y. WPIS BLOGA (single-post.php)
   ============================================================ */
.gc-read-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:70;pointer-events:none}
.gc-read-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--lime));transform:scaleX(0);transform-origin:0 50%;transition:transform .1s linear}

.gc-post-hero{padding:16px 0 36px;background:linear-gradient(180deg,var(--bg-warm),#fff)}
.gc-post-hero__crumbs{gap:8px;padding:2px 0 0}
.gc-post-hero__inner{max-width:880px;margin:36px auto 0;text-align:center;display:flex;flex-direction:column;align-items:center}
.gc-post-hero__meta{justify-content:center}
.gc-post-hero__title{font-family:var(--serif);font-weight:500;font-size:52px;line-height:1.06;letter-spacing:-1.2px;color:var(--brand);margin:18px 0 0;text-wrap:balance}
.gc-post-hero__lead{font-size:19px;line-height:1.6;color:var(--muted);margin:18px 0 0;max-width:720px;text-wrap:pretty}
.gc-post-hero__byline{display:flex;align-items:center;gap:12px;margin-top:26px;text-align:left;font-size:13px;line-height:1.35;color:var(--muted)}
.gc-post-hero__byline strong{color:var(--ink);font-weight:600}
.gc-post-hero__avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--indigo);color:var(--lime)}

.gc-post-cover{margin:0;border-radius:24px;overflow:hidden;background:var(--bg-chip);aspect-ratio:21/9;box-shadow:0 24px 60px rgba(30,27,80,.12)}
.gc-post-cover img{display:block;width:100%;height:100%;object-fit:cover}

.gc-post-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:72px;align-items:start;padding-top:56px;padding-bottom:72px}
.gc-post-main{min-width:0;max-width:740px}
.gc-post-aside{align-self:stretch} /* kolumna na całą wysokość treści — inaczej sticky nie ma gdzie „jechać" */
.gc-post-aside__sticky{position:sticky;top:calc(var(--gc-header-h,140px) + 16px);display:flex;flex-direction:column;gap:16px}

/* Typografia treści */
.gc-article{font-size:17.5px;line-height:1.78;color:var(--text)}
.gc-article>:first-child{margin-top:0}
.gc-article p{margin:0 0 22px}
.gc-article>p:first-of-type{font-size:19px;line-height:1.7;color:var(--ink)}
.gc-article h2{font-family:var(--serif);font-weight:600;font-size:32px;line-height:1.18;letter-spacing:-.5px;color:var(--brand);margin:52px 0 16px;scroll-margin-top:160px}
.gc-article h3{font-family:var(--serif);font-weight:600;font-size:23px;line-height:1.3;color:var(--ink);margin:36px 0 12px;scroll-margin-top:160px}
.gc-article h4{font-size:18px;font-weight:700;color:var(--ink);margin:28px 0 10px}
.gc-article a{color:var(--brand);text-decoration:underline;text-decoration-color:rgba(51,43,112,.35);text-underline-offset:3px;text-decoration-thickness:1.5px;transition:text-decoration-color .2s}
.gc-article a:hover{text-decoration-color:var(--brand)}
.gc-article strong,.gc-article b{color:var(--ink);font-weight:650}
.gc-article ul,.gc-article ol{margin:0 0 24px;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.gc-article ul>li{position:relative;padding-left:28px}
.gc-article ul>li::before{content:"";position:absolute;left:6px;top:.72em;width:8px;height:8px;border-radius:50%;background:var(--green)}
.gc-article ol{counter-reset:gc-ol}
.gc-article ol>li{position:relative;padding-left:40px;counter-increment:gc-ol}
.gc-article ol>li::before{content:counter(gc-ol);position:absolute;left:0;top:.18em;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--lime);color:var(--brand);font-size:13px;font-weight:700;font-family:var(--sans);line-height:1}
.gc-article blockquote{margin:32px 0;padding:24px 28px;border-left:4px solid var(--green);background:var(--bg-warm);border-radius:0 16px 16px 0;font-family:var(--serif);font-size:21px;line-height:1.5;font-style:italic;color:var(--ink)}
.gc-article blockquote p:last-child{margin:0}
.gc-article img{max-width:100%;height:auto;border-radius:16px}
.gc-article figure,.gc-article .wp-caption{margin:32px 0;max-width:100%}
.gc-article figcaption,.gc-article .wp-caption-text{margin-top:10px;font-size:13.5px;color:var(--muted);text-align:center}
.gc-article p>img:only-child{display:block;margin:32px auto}
.gc-article table{width:100%;border-collapse:collapse;margin:28px 0;font-size:15px}
.gc-article th,.gc-article td{padding:12px 14px;border-bottom:1px solid var(--hairline);text-align:left}
.gc-article th{background:var(--bg-warm);color:var(--ink);font-weight:600}
.gc-article iframe{max-width:100%;border-radius:16px}
.gc-article hr{border:0;border-top:1px solid var(--hairline);margin:40px 0}
.gc-article ul.products{margin:32px 0;padding:0;gap:20px}
.gc-article ul.products>li::before{content:none}
.gc-article ul.products>li{padding-left:0}

/* Spis treści */
.gc-post-toc{background:#fff;border:1px solid var(--hairline);border-radius:var(--r-lg);padding:18px 20px}
.gc-post-toc__title{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;list-style:none;font-size:11px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--muted)}
.gc-post-toc__title::-webkit-details-marker{display:none}
.gc-post-toc__count{display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--bg-chip);color:var(--brand);font-size:11px;letter-spacing:0}
.gc-post-toc__list{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:2px;max-height:52vh;overflow:auto}
.gc-post-toc__item a{display:block;padding:6px 10px;border-left:2px solid var(--hairline);font-size:13.5px;line-height:1.4;color:var(--muted);text-decoration:none;transition:color .15s,border-color .15s,background .15s}
.gc-post-toc__item--h3 a{padding-left:22px;font-size:12.5px}
.gc-post-toc__item a:hover{color:var(--ink);background:var(--bg-paper)}
.gc-post-toc__item a.is-active{color:var(--brand);border-left-color:var(--green);font-weight:600;background:var(--bg-paper)}
.gc-post-toc--mobile{display:none;margin-bottom:28px}

/* Udostępnianie */
.gc-post-share{display:flex;align-items:center;gap:12px}
.gc-post-share__label{font-size:11px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--muted)}
.gc-post-share__btns{display:inline-flex;gap:8px}
.gc-post-share__btn{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;border:1px solid var(--border-strong);background:#fff;color:var(--brand);cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.gc-post-share__btn:hover{background:var(--indigo);border-color:var(--indigo);color:#fff}
.gc-post-share__btn.is-copied{background:var(--green);border-color:var(--green);color:#fff}
.gc-post-share--aside{padding:14px 20px;background:#fff;border:1px solid var(--hairline);border-radius:var(--r-lg);justify-content:space-between}

/* CTA */
.gc-post-cta{position:relative;overflow:hidden;padding:24px 22px;border-radius:var(--r-lg);background:var(--indigo);color:#fff}
.gc-post-cta::after{content:"";position:absolute;right:-50px;bottom:-50px;width:170px;height:170px;border-radius:50%;background:radial-gradient(circle,rgba(100,188,81,.28),transparent 70%)}
.gc-post-cta__eyebrow{font-size:10.5px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:var(--lime)}
.gc-post-cta__title{font-family:var(--serif);font-size:22px;line-height:1.2;font-weight:500;margin:8px 0}
.gc-post-cta__text{font-size:13.5px;line-height:1.55;color:rgba(255,255,255,.72);margin:0 0 16px}
.gc-post-cta .gc-btn{position:relative;z-index:1}

.gc-post-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:48px;padding-top:28px;border-top:1px solid var(--hairline)}
.gc-post-related{padding:64px 0 80px;background:var(--bg-warm)}

@media (max-width:1100px){
  .gc-post-layout{grid-template-columns:1fr;gap:0}
  .gc-post-main{max-width:760px;margin:0 auto;width:100%}
  .gc-post-aside{max-width:760px;margin:40px auto 0;width:100%}
  .gc-post-aside__sticky{position:static}
  .gc-post-toc--desktop,.gc-post-share--aside{display:none}
  .gc-post-toc--mobile{display:block}
  .gc-post-hero__title{font-size:42px}
}
@media (max-width:760px){
  .gc-post-hero{padding-bottom:24px}
  .gc-post-hero__inner{margin-top:22px;text-align:left;align-items:flex-start}
  .gc-post-hero__meta{justify-content:flex-start}
  .gc-post-hero__title{font-size:32px;letter-spacing:-.6px}
  .gc-post-hero__lead{font-size:16.5px}
  .gc-post-cover{aspect-ratio:16/10;border-radius:16px;margin-inline:calc(-1 * var(--gutter) + 8px)}
  .gc-post-layout{padding-top:32px;padding-bottom:48px}
  .gc-article{font-size:16.5px;line-height:1.72}
  .gc-article>p:first-of-type{font-size:17.5px}
  .gc-article h2{font-size:26px;margin-top:40px}
  .gc-article h3{font-size:20px}
  .gc-article blockquote{padding:18px 20px;font-size:18px}
  .gc-post-related{padding:48px 0 56px}
}

/* ============================================================
   16z. DOKUMENT PRAWNY (template-legal.php) — wg projektu legal/Regulamin
   ============================================================ */
.gc-legal{background:var(--bg-paper);padding-bottom:1px}
.gc-legal-wrap{max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)} /* pełna szerokość treści (1256px), jak reszta sklepu */
.gc-legal-head{background:var(--indigo);color:#fff}
.gc-legal-head .gc-legal-wrap{padding-top:46px;padding-bottom:40px}
.gc-legal-head__crumb{font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--lime)}
.gc-legal-head__title{font-family:var(--serif);font-weight:500;font-size:42px;line-height:1.05;letter-spacing:-.02em;color:#fff;margin:14px 0 12px}
.gc-legal-head__lead{font-size:15px;line-height:1.65;color:rgba(255,255,255,.82);margin:0;max-width:820px}
.gc-legal-head__lead strong,.gc-legal-head__lead b{color:#fff}
.gc-legal-head__lead a{color:var(--lime)}
.gc-legal-head__updated{font-size:12.5px;color:rgba(255,255,255,.6);margin-top:16px}

.gc-legal-toc{padding-top:24px;padding-bottom:4px}
.gc-legal-toc__card{background:#fff;border:1px solid var(--hairline);border-radius:14px;padding:20px 24px}
.gc-legal-toc__title{font-family:var(--serif);font-size:15px;font-weight:600;color:var(--accent);margin:0 0 12px}
.gc-legal-toc__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 28px;list-style:none;margin:0;padding:0}
.gc-legal-toc__list a{display:block;padding:3px 0;font-size:13px;color:#3A3548;text-decoration:none}
.gc-legal-toc__list a:hover{color:var(--green-dark)}

.gc-legal-main{padding-top:8px;padding-bottom:80px}
.gc-legal-sec{padding:30px 0;border-bottom:1px solid var(--hairline);scroll-margin-top:150px}
.gc-legal-sec:last-child{border-bottom:0}
.gc-legal-sec__title{display:flex;align-items:baseline;gap:12px;font-family:var(--serif);font-weight:600;font-size:22px;letter-spacing:-.01em;color:var(--accent);margin:0 0 14px}
.gc-legal-sec__n{display:inline-flex;align-items:center;justify-content:center;flex:none;min-width:30px;height:30px;padding:0 6px;border-radius:8px;background:var(--indigo);color:#fff;font-family:var(--sans);font-size:13px;font-weight:700;transform:translateY(-3px)}
.gc-legal-sec h3{font-family:var(--sans);font-weight:700;font-size:14.5px;color:var(--ink);margin:20px 0 8px}
.gc-legal-sec p{font-size:14.5px;line-height:1.7;color:#3A3548;margin:0 0 12px}
.gc-legal-sec a{color:var(--green-dark)}
.gc-legal-sec strong,.gc-legal-sec b{color:var(--ink);font-weight:700}
.gc-legal-sec ul,.gc-legal-sec ol{margin:0 0 12px;padding-left:0;list-style:none}
.gc-legal-sec ul>li{position:relative;padding-left:22px;margin-bottom:9px;font-size:14.5px;line-height:1.65;color:#3A3548}
.gc-legal-sec ul>li::before{content:"";position:absolute;left:2px;top:9px;width:6px;height:6px;border-radius:50%;background:var(--green)}
.gc-legal-sec ol{counter-reset:gc-legal-ol}
.gc-legal-sec ol>li{position:relative;padding-left:26px;margin-bottom:9px;font-size:14.5px;line-height:1.65;color:#3A3548;counter-increment:gc-legal-ol}
.gc-legal-sec ol>li::before{content:counter(gc-legal-ol) ".";position:absolute;left:0;font-weight:700;color:var(--accent)}
.gc-legal-sec blockquote,.gc-legal-sec .wp-block-quote{margin:6px 0 14px;padding:13px 16px;border:0;border-radius:10px;background:#E8F0E0;font-family:var(--sans);font-style:normal}
.gc-legal-sec blockquote p{font-size:13.5px;line-height:1.6;margin:0}
.gc-legal-sec blockquote p+p{margin-top:8px}
.gc-legal-sec blockquote strong{color:var(--green-dark)}
.gc-legal-sec blockquote cite{display:none}
.gc-legal-sec--intro p{color:var(--muted)}
.gc-legal-sec.is-highlight{border-bottom:0}
.gc-legal-sec__box{background:#fff;border:1.5px solid var(--green);border-radius:16px;padding:26px 28px;box-shadow:0 12px 28px rgba(30,27,80,.06)}
.gc-legal-sec.is-highlight .gc-legal-sec__n{background:var(--green)}
.gc-legal-badge{display:inline-flex;align-items:center;gap:7px;margin-bottom:6px;padding:5px 12px;border-radius:999px;background:var(--lime);color:var(--indigo);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
@media (max-width:1100px){
  .gc-legal-toc__list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .gc-legal-head__title{font-size:32px}
  .gc-legal-toc__list{grid-template-columns:1fr}
  .gc-legal-sec__box{padding:20px 18px}
}

/* ============================================================
   16q. KONTAKT (template-contact.php)
   ============================================================ */
.gc-contact{background:var(--bg-paper)}
.gc-contact-hero{position:relative;overflow:hidden;background:var(--indigo);color:#fff}
.gc-contact-hero::after{content:"";position:absolute;right:-120px;top:-140px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(100,188,81,.18),transparent 65%);pointer-events:none}
.gc-contact-hero__row{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:56px;align-items:center;padding-top:20px;padding-bottom:72px}
.gc-contact-hero__crumbs{padding:0 0 36px;gap:8px}
.gc-contact-hero__crumbs,.gc-contact-hero__crumbs a{color:rgba(255,255,255,.6)}
.gc-contact-hero__crumbs a:hover{color:#fff}
.gc-contact-hero__eyebrow{font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--lime)}
.gc-contact-hero__title{font-family:var(--serif);font-weight:500;font-size:60px;line-height:1.02;letter-spacing:-1.5px;color:#fff;margin:14px 0 18px;text-wrap:balance}
.gc-contact-hero__title em{font-style:italic;color:var(--lime)}
.gc-contact-hero__lead{font-size:17px;line-height:1.6;color:rgba(255,255,255,.78);margin:0;max-width:560px}
.gc-contact-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.gc-contact-hero__actions .gc-btn{height:52px;padding:0 24px;font-size:15px}
.gc-contact-hero__ghost{background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.22)}
.gc-contact-hero__ghost:hover{background:rgba(255,255,255,.16);color:#fff;border-color:rgba(255,255,255,.4)}

.gc-contact-status{padding:26px;border-radius:22px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.gc-contact-status__top{display:flex;align-items:center;gap:10px}
.gc-contact-status__dot{position:relative;width:12px;height:12px;border-radius:50%;background:var(--kraft)}
.gc-contact.is-open .gc-contact-status__dot{background:var(--green)}
.gc-contact.is-open .gc-contact-status__dot::after{content:"";position:absolute;inset:-5px;border-radius:50%;border:2px solid var(--green);animation:gc-pulse 1.8s ease-out infinite}
@keyframes gc-pulse{0%{transform:scale(.6);opacity:.9}100%{transform:scale(1.6);opacity:0}}
.gc-contact-status__state{font-family:var(--serif);font-size:24px;font-weight:500}
.gc-contact-status__hours{display:flex;align-items:center;gap:8px;margin:14px 0 4px;font-size:15px;font-weight:600;color:#fff}
.gc-contact-status__hours svg{color:var(--lime)}
.gc-contact-status__next{min-height:40px;margin:0;font-size:13.5px;line-height:1.5;color:rgba(255,255,255,.68)}
.gc-contact-status__week{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;list-style:none;margin:18px 0 0;padding:0}
.gc-contact-status__week li{display:grid;place-items:center;height:34px;border-radius:10px;font-size:12px;font-weight:600;color:rgba(255,255,255,.35);background:rgba(255,255,255,.04)}
.gc-contact-status__week li.is-on{color:var(--indigo);background:var(--lime)}
.gc-contact-status__week li.is-today{box-shadow:0 0 0 2px #fff}

.gc-contact-cards-wrap{position:relative;z-index:2;margin-top:-40px}
.gc-contact-cards{display:grid;grid-template-columns:repeat(var(--gc-cards,4),minmax(0,1fr));gap:18px}
.gc-contact-card{display:flex;flex-direction:column;padding:26px 24px;background:#fff;border:1px solid var(--hairline);border-radius:20px;box-shadow:0 18px 40px rgba(30,27,80,.08);transition:transform .25s cubic-bezier(.33,1,.68,1),box-shadow .25s}
.gc-contact-card:hover{transform:translateY(-4px);box-shadow:0 26px 56px rgba(30,27,80,.12)}
.gc-contact-card__ic{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--lime);color:var(--brand)}
.gc-contact-card__title{font-family:var(--serif);font-size:20px;font-weight:600;line-height:1.2;color:var(--ink);margin:18px 0 6px}
.gc-contact-card__desc{font-size:13.5px;line-height:1.55;color:var(--muted);margin:0}
.gc-contact-card__value{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:16px 0 0;padding:12px 12px 12px 14px;border-radius:12px;background:var(--bg-paper);font-size:15px;font-weight:600;color:var(--ink);word-break:break-word}
.gc-contact-card__copy{flex:none;display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;transition:background .15s,color .15s}
.gc-contact-card__copy:hover{background:#fff;color:var(--brand)}
.gc-contact-card__copy.is-copied{background:var(--green);color:#fff}
.gc-contact-card__cta{display:inline-flex;align-items:center;gap:6px;margin-top:auto;padding-top:16px;font-size:14px;font-weight:600;color:var(--green-dark);text-decoration:none}
.gc-contact-card__cta svg{transition:transform .2s}
.gc-contact-card:hover .gc-contact-card__cta svg{transform:translateX(4px)}

.gc-contact-map-wrap{padding:64px 0 0}
.gc-contact-map{position:relative;border-radius:26px;overflow:hidden;background:#E9E6DF;min-height:480px;box-shadow:0 24px 60px rgba(30,27,80,.1)}
.gc-contact-map__canvas{position:absolute;inset:0}
/* Iframe wyższy o 110px i przesunięty w górę — chowa ramkę informacyjną Google z lewego górnego rogu (mamy własną kartę) */
.gc-contact-map__canvas iframe{position:absolute;left:0;right:0;top:-160px;width:100%;height:calc(100% + 160px);border:0;opacity:0;transition:opacity .5s ease}
.gc-contact-map.is-loaded iframe{opacity:1}
.gc-contact-map__ph{position:absolute;inset:0;background-color:#ECE8E0;background-image:linear-gradient(rgba(51,43,112,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(51,43,112,.06) 1px,transparent 1px);background-size:44px 44px}
.gc-contact-map.is-loading .gc-contact-map__ph{animation:gc-map-breathe 1.4s ease-in-out infinite}
@keyframes gc-map-breathe{50%{opacity:.6}}
.gc-contact-map__pin{position:absolute;left:66%;top:48%;display:grid;place-items:center;width:56px;height:56px;border-radius:50% 50% 50% 0;transform:translate(-50%,-50%) rotate(-45deg);background:var(--indigo);color:var(--lime);box-shadow:0 12px 26px rgba(30,27,80,.3)}
.gc-contact-map__pin svg{transform:rotate(45deg)}
.gc-contact-map__load{position:absolute;left:66%;top:calc(48% + 58px);transform:translateX(-50%)}
.gc-contact-map__load[hidden]{display:none}
.gc-contact-map__card{position:absolute;left:28px;top:28px;bottom:28px;z-index:2;display:flex;flex-direction:column;justify-content:center;width:360px;padding:30px;background:#fff;border-radius:20px;box-shadow:0 20px 50px rgba(15,13,56,.18)}
.gc-contact-map__eyebrow{font-size:11px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:var(--green-dark)}
.gc-contact-map__title{font-family:var(--serif);font-size:28px;font-weight:500;line-height:1.1;color:var(--brand);margin:10px 0 16px}
.gc-contact-map__addr{display:flex;align-items:flex-start;gap:10px;margin:0 0 10px;font-size:14.5px;line-height:1.5;color:var(--text)}
.gc-contact-map__addr svg{flex:none;margin-top:3px;color:var(--green-dark)}
.gc-contact-map__actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:14px}
.gc-contact-map__open{font-size:13.5px;font-weight:600;color:var(--brand)}

.gc-contact-help{padding:72px 0 8px}
.gc-contact-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.gc-contact-link{display:flex;align-items:center;gap:14px;padding:18px;background:#fff;border:1px solid var(--hairline);border-radius:16px;text-decoration:none;transition:border-color .2s,transform .2s,box-shadow .2s}
.gc-contact-link:hover{border-color:var(--border-strong);transform:translateY(-2px);box-shadow:0 12px 28px rgba(30,27,80,.07)}
.gc-contact-link__ic{flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--bg-chip);color:var(--brand)}
.gc-contact-link__text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.gc-contact-link__text strong{font-size:14.5px;color:var(--ink)}
.gc-contact-link__text span{font-size:12.5px;color:var(--muted)}
.gc-contact-link__arrow{flex:none;color:var(--green-dark);transition:transform .2s}
.gc-contact-link:hover .gc-contact-link__arrow{transform:translateX(4px)}
.gc-contact-content{padding:48px 0 0}
.gc-contact-company{padding:56px 0 80px}
.gc-contact-company__row{position:relative;display:flex;flex-wrap:wrap;align-items:flex-start;gap:24px 56px;padding-top:32px}
.gc-contact-company__row::before{content:"";position:absolute;top:0;left:var(--gutter);right:var(--gutter);height:1px;background:var(--hairline)}
.gc-contact-company__block{font-size:14px;line-height:1.7;color:var(--muted)}
.gc-contact-company__block strong{color:var(--ink)}
.gc-contact-company__social{display:flex;align-items:center;gap:10px;margin-left:auto}
.gc-contact-company__social span{font-size:12px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted);margin-right:4px}
.gc-contact-company__social a{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--indigo);color:#fff}
.gc-contact-company__social a:hover{background:var(--brand);color:var(--lime)}

@media (max-width:1100px){
  .gc-contact-hero__row{grid-template-columns:1fr;gap:32px;padding-bottom:88px}
  .gc-contact-hero__title{font-size:46px}
  .gc-contact-status{max-width:520px}
  .gc-contact-cards,.gc-contact-links{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
  .gc-contact-hero__crumbs{padding-bottom:22px}
  .gc-contact-hero__title{font-size:36px;letter-spacing:-.8px}
  .gc-contact-hero__lead{font-size:15.5px}
  .gc-contact-hero__actions .gc-btn{width:100%;justify-content:center}
  .gc-contact-cards,.gc-contact-links{grid-template-columns:1fr}
  .gc-contact-map{display:flex;flex-direction:column;min-height:0;border-radius:20px}
  .gc-contact-map__canvas{position:relative;height:320px}
  .gc-contact-map__canvas iframe{top:-110px;height:calc(100% + 110px)}
  .gc-contact-map__card{position:static;width:auto;border-radius:0;box-shadow:none;padding:22px}
  .gc-contact-map__pin,.gc-contact-map__load{left:50%}
  .gc-contact-company__social{margin-left:0}
}
@media (prefers-reduced-motion:reduce){.gc-contact.is-open .gc-contact-status__dot::after{animation:none}}

/* ============================================================
   16k. KOSZYK — komunikaty (niedostępne produkty), blokada CTA,
        pusty koszyk, wstrzymane zamówienie (cart-errors)
   ============================================================ */
.gc-cart-alerts{display:flex;flex-direction:column;gap:12px;padding-top:24px}
.gc-cartalert{display:grid;grid-template-columns:46px minmax(0,1fr);gap:18px;background:var(--bg-warm);border:1px solid #EADBC2;border-radius:var(--r-lg);padding:22px 24px;animation:gc-fade-slide .32s cubic-bezier(.4,0,.2,1)}
.gc-cartalert__ic{width:46px;height:46px;border-radius:var(--r-pill);background:var(--kraft-light);color:var(--brown);display:grid;place-items:center}
.gc-cartalert__eyebrow{color:#9A6B4F}
.gc-cartalert__title{margin:6px 0 6px;font-family:var(--serif);font-size:22px;font-weight:600;line-height:1.2;letter-spacing:-.3px;color:var(--brand)}
.gc-cartalert__lead{margin:0 0 16px;font-size:14px;line-height:1.55;color:var(--muted);max-width:640px}
.gc-cartalert__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.gc-cartalert__item{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:16px;align-items:center;background:#fff;border:1px solid var(--hairline);border-radius:12px;padding:10px 16px 10px 10px}
.gc-cartalert__thumb{width:56px;height:64px;border-radius:8px;background:var(--bg-paper);border:1px solid var(--border);display:grid;place-items:center;overflow:hidden;color:var(--muted-2)}
.gc-cartalert__thumb img{width:100%;height:100%;object-fit:contain}
.gc-cartalert__item--removed .gc-cartalert__thumb img{filter:grayscale(1);opacity:.7}
.gc-cartalert__info{display:flex;flex-direction:column;gap:3px;min-width:0}
.gc-cartalert__name{font-family:var(--serif);font-size:16px;font-weight:600;color:var(--brand);line-height:1.25}
.gc-cartalert__item--removed .gc-cartalert__name{text-decoration:line-through;text-decoration-color:rgba(51,43,112,.35)}
.gc-cartalert__var{font-size:11px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;color:var(--muted)}
.gc-cartalert__reason{font-size:13px;color:var(--text);line-height:1.45}
.gc-cartalert__side{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.gc-cartalert__chip{font-size:10.5px;font-weight:700;letter-spacing:.9px;text-transform:uppercase;padding:4px 10px;border-radius:var(--r-pill);white-space:nowrap;background:#FBEDEA;color:var(--sale)}
.gc-cartalert__item--reduced .gc-cartalert__chip{background:var(--lime);color:var(--indigo)}
.gc-cartalert__item--modified .gc-cartalert__chip{background:#EEEDF8;color:var(--indigo)}
.gc-cartalert__link{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:600;color:var(--brand);white-space:nowrap}
.gc-cartalert__link:hover{color:var(--green-dark)}

.gc-notice{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;border-radius:var(--r-md);border:1px solid;font-size:14px;font-weight:500;line-height:1.45;animation:gc-fade-slide .25s ease}
.gc-notice__ic{flex:none;width:24px;height:24px;border-radius:var(--r-pill);display:grid;place-items:center;color:#fff;margin-top:-1px}
.gc-notice__txt a{font-weight:700;text-decoration:underline;text-underline-offset:2px;color:inherit}
.gc-notice__txt .button,.gc-notice__txt a.wc-forward{float:none;display:inline-flex;align-items:center;margin-left:8px;padding:4px 11px;border-radius:var(--r-pill);background:#fff;border:1px solid currentColor;font-size:12px;font-weight:700;text-decoration:none;color:inherit;white-space:nowrap}
.gc-notice--error{background:#FBEDEA;border-color:#F0C8C0;color:#9B3320}
.gc-notice--error .gc-notice__ic{background:var(--sale)}
.gc-notice--notice{background:var(--trust-bg);border-color:#DCE4C3;color:var(--indigo)}
.gc-notice--notice .gc-notice__ic{background:var(--indigo)}
.gc-notice--success{background:#F1F7EC;border-color:#CCE3BC;color:var(--green-dark)}
.gc-notice--success .gc-notice__ic{background:var(--green)}

/* Domyślne notyfikacje WooCommerce na stronach Woo (checkout, konto) — ten sam język */
.gc-woo-content :is(ul.woocommerce-error,.woocommerce-info,.woocommerce-message){list-style:none;margin:0 0 12px;padding:12px 16px;border-radius:var(--r-md);border:1px solid;font-size:14px;font-weight:500;line-height:1.45}
.gc-woo-content ul.woocommerce-error{background:#FBEDEA;border-color:#F0C8C0;color:#9B3320}
.gc-woo-content ul.woocommerce-error li+li{margin-top:4px}
.gc-woo-content .woocommerce-info{background:var(--trust-bg);border-color:#DCE4C3;color:var(--indigo)}
.gc-woo-content .woocommerce-message{background:#F1F7EC;border-color:#CCE3BC;color:var(--green-dark)}

.gc-checkout-cta.is-disabled{background:#E7E2D8;color:var(--muted);box-shadow:none;cursor:not-allowed;pointer-events:none}
.gc-cta-block{margin-top:12px;background:#FBEDEA;border:1px solid #F0C8C0;border-radius:var(--r-md);padding:12px 14px;font-size:13px;line-height:1.45;color:#9B3320}
.gc-cta-block ul{margin:6px 0 0;padding-left:18px}

.gc-empty{margin:28px 0 8px;background:#fff;border:1px solid var(--hairline);border-radius:var(--r-lg);padding:56px 24px;text-align:center;animation:gc-fade-slide .32s cubic-bezier(.4,0,.2,1)}
.gc-empty__ic{width:76px;height:76px;margin:0 auto 18px;border-radius:var(--r-pill);background:var(--bg-chip);color:var(--brand);display:grid;place-items:center}
.gc-empty__title{margin:0 0 8px;font-family:var(--serif);font-size:30px;font-weight:500;letter-spacing:-.5px;color:var(--brand)}
.gc-empty__lead{margin:0 auto;max-width:460px;font-size:15px;line-height:1.55;color:var(--muted)}
.gc-empty__actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:24px}

.gc-issue{max-width:760px;margin:8px auto 72px;background:#fff;border:1px solid var(--hairline);border-radius:var(--r-lg);padding:48px 48px 40px;text-align:center;box-shadow:var(--shadow-soft);animation:gc-fade-slide .32s cubic-bezier(.4,0,.2,1)}
.gc-issue__ic{position:relative;width:78px;height:78px;margin:0 auto 20px;border-radius:var(--r-pill);background:#FBEDEA;color:var(--sale);display:grid;place-items:center}
.gc-issue__ic span{position:absolute;top:-2px;right:-2px;width:26px;height:26px;border-radius:var(--r-pill);background:var(--sale);color:#fff;border:3px solid #fff;display:grid;place-items:center;font-size:13px;font-weight:800;line-height:1}
.gc-issue__eyebrow{color:var(--sale)}
.gc-issue__title{margin:10px 0 12px;font-family:var(--serif);font-size:40px;font-weight:500;line-height:1.08;letter-spacing:-1px;color:var(--indigo);text-wrap:balance}
.gc-issue__title em{font-style:italic;color:var(--accent)}
.gc-issue__lead{margin:0 auto;max-width:540px;font-size:16px;line-height:1.55;color:var(--muted)}
.gc-issue__list{list-style:none;margin:26px auto 0;padding:0;max-width:560px;text-align:left;display:flex;flex-direction:column;gap:8px}
.gc-issue__list li{display:flex;gap:10px;align-items:flex-start;background:#FBEDEA;border:1px solid #F0C8C0;border-radius:var(--r-md);padding:12px 14px;font-size:14px;font-weight:500;line-height:1.45;color:#9B3320}
.gc-issue__dot{flex:none;width:22px;height:22px;border-radius:var(--r-pill);background:var(--sale);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:800}
.gc-issue__actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:28px}
.gc-issue__help{margin:24px 0 0;font-size:13px;color:var(--muted)}
.gc-issue__help a{font-weight:600;margin-left:8px;white-space:nowrap}

/* „Co dalej" — skróty + świeże kawy (404, pusty koszyk) */
.gc-recovery{padding:56px 0 76px}
.gc-recovery__head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px 32px;flex-wrap:wrap;margin-bottom:28px}
.gc-recovery__title{margin:0;font-size:34px}
.gc-recovery__lead{margin:10px 0 0;max-width:520px;font-size:15px;line-height:1.55;color:var(--muted)}
.gc-recovery__chips{display:flex;flex-wrap:wrap;gap:8px;max-width:640px;justify-content:flex-end}
.gc-recovery__chip{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--r-pill);background:#fff;border:1px solid var(--border);font-size:13px;font-weight:600;color:var(--brand);transition:border-color var(--transition),transform var(--transition)}
.gc-recovery__chip:hover{border-color:var(--brand);color:var(--brand);transform:translateY(-1px)}
.gc-recovery__chip.is-hl{background:var(--lime);border-color:var(--lime);color:var(--indigo)}
.gc-recovery__chip.is-hl svg{color:var(--green-dark)}

@media (max-width:760px){
  .gc-cartalert{grid-template-columns:1fr;gap:12px;padding:18px 16px}
  .gc-cartalert__item{grid-template-columns:52px minmax(0,1fr);gap:12px}
  .gc-cartalert__side{grid-column:1/-1;flex-direction:row;align-items:center;justify-content:space-between;padding-left:64px}
  .gc-issue{padding:36px 20px 30px;margin-bottom:48px}
  .gc-issue__title{font-size:30px}
  .gc-empty{padding:40px 18px}
  .gc-empty__title{font-size:25px}
  .gc-recovery{padding:40px 0 56px}
  .gc-recovery__title{font-size:28px}
  .gc-recovery__chips{justify-content:flex-start}
}

/* ============================================================
   16l. STRONA 404 — „Ta strona już wystygła"
   ============================================================ */
.gc-404__hero{background:var(--bg-warm);border-bottom:1px solid var(--hairline)}
.gc-404__wrap{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:center;padding-block:64px 72px}
.gc-404__copy{animation:gc-fade-slide .45s cubic-bezier(.4,0,.2,1)}
.gc-404__title{margin:14px 0 16px;font-family:var(--serif);font-size:64px;font-weight:500;line-height:1.02;letter-spacing:-1.5px;color:var(--indigo);text-wrap:balance}
.gc-404__title em{font-style:italic;color:var(--accent)}
.gc-404__lead{margin:0;max-width:520px;font-size:18px;line-height:1.55;color:var(--muted)}
.gc-404__search{margin-top:28px}
.gc-404__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.gc-404__help{margin:28px 0 0;font-size:13.5px;color:var(--muted);display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px}
.gc-404__help a{display:inline-flex;align-items:center;gap:6px;font-weight:600}
.gc-404__art{position:relative;min-height:440px;border-radius:var(--r-xl);background:var(--indigo);color:var(--lime);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 28px;overflow:hidden;box-shadow:0 24px 60px rgba(30,27,80,.22);animation:gc-fade-slide .55s cubic-bezier(.4,0,.2,1)}
.gc-404__glyph{position:absolute;right:-46px;bottom:-56px;width:280px;height:280px;color:#fff;opacity:.08;transform:rotate(-12deg)}
.gc-404__digits{position:relative;display:flex;align-items:center;font-family:var(--serif);font-weight:600;font-variation-settings:"opsz" 36;font-size:176px;line-height:.9;letter-spacing:-6px;font-variant-numeric:lining-nums}
.gc-404__cup{width:168px;height:auto;margin:22px -2px 0 6px;transform:rotate(-6deg);transition:transform .38s cubic-bezier(.4,0,.2,1)}
.gc-404__art:hover .gc-404__cup{transform:rotate(4deg)}
.gc-404__note{position:relative;margin-top:26px;max-width:300px;text-align:center;font-size:14px;line-height:1.5;color:var(--on-dark-soft)}

@media (max-width:980px){
  .gc-404__wrap{grid-template-columns:1fr;gap:36px;padding-block:44px 52px}
  .gc-404__art{min-height:300px;order:-1}
  .gc-404__digits{font-size:120px;letter-spacing:-4px}
  .gc-404__cup{width:114px}
  .gc-404__title{font-size:48px}
}
@media (max-width:560px){
  .gc-404__wrap{padding-block:24px 44px}
  .gc-404__art{min-height:230px;padding:28px 18px;border-radius:var(--r-lg)}
  .gc-404__digits{font-size:92px;letter-spacing:-3px}
  .gc-404__cup{width:86px;margin-top:14px}
  .gc-404__note{margin-top:16px;font-size:13px}
  .gc-404__title{font-size:38px;letter-spacing:-1px}
  .gc-404__lead{font-size:16px}
  .gc-404__actions .gc-btn{flex:1 1 auto}
}
@media (prefers-reduced-motion:reduce){
  .gc-cartalert,.gc-notice,.gc-empty,.gc-issue,.gc-404__copy,.gc-404__art{animation:none}
  .gc-404__cup{transition:none}
}

/* Karta produktu w wąskiej kolumnie (2 kolumny na telefonie): cena nad przyciskiem,
   bez tego „Wybierz" zasłaniał cenę, a „od · 250g" łamało się na trzy linie. */
@media (max-width:560px){
  .gc-card__foot{flex-direction:column;align-items:stretch;gap:10px}
  .gc-card__foot .gc-btn,.gc-card__foot .gc-btn--primary{width:100%;padding:10px 12px}
  .gc-card__price-from{white-space:nowrap}
}

/* ============================================================
   16m. CHECKOUT — kafelki dostawy i płatności (wg projektu koszyka),
        punkt odbioru, pasek darmowej dostawy, komunikaty
   ============================================================ */
.gc-checkout-page .gc-cart-head{padding-bottom:14px}
.gc-checkout-page .gc-cart-alerts{padding:0 0 16px}

/* Wspólne: plakietka i kropka radia */
.gc-tile-badge{position:absolute;top:-9px;left:14px;z-index:1;font-size:10px;font-weight:700;line-height:1.2;background:var(--lime);color:var(--brand);
  padding:3px 8px;border-radius:var(--r-pill);text-transform:uppercase;letter-spacing:.6px;white-space:nowrap}
.gc-tile-dot{width:22px;height:22px;border-radius:50%;border:1.5px solid #D5CFC1;background:#fff;flex:none;transition:border .18s ease}

/* Kafelki dostawy */
.gc-shiptiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:14px 12px;padding-top:4px}
.gc-shiptile{position:relative;display:flex;flex-direction:column;gap:10px;padding:16px;background:#fff;border:1px solid var(--border);
  border-radius:12px;cursor:pointer;text-align:left;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}
.gc-shiptile:hover{border-color:var(--border-strong)}
.gc-shiptile.is-active{background:#EEEDF8;border-color:var(--indigo);box-shadow:inset 0 0 0 .5px var(--indigo)}
.gc-shiptile.is-active .gc-tile-dot{border:6px solid var(--indigo)}
.gc-shiptile:has(.gc-shiptile__radio:focus-visible){box-shadow:0 0 0 3px rgba(100,188,81,.35)}
.gc-shiptile__radio{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.gc-shiptile__top{display:flex;align-items:center;gap:12px}
.gc-shiptile__ic{color:var(--brand);display:inline-flex}
.gc-shiptile__body{display:flex;flex-direction:column;flex:1;min-width:0}
.gc-shiptile__name{font-size:15px;font-weight:600;color:var(--ink);line-height:1.25}
.gc-shiptile__desc{font-size:12px;color:var(--muted);margin-top:3px;line-height:1.35}
.gc-shiptile__price{font-size:14px;font-weight:700;color:var(--indigo);font-variant-numeric:tabular-nums;padding-top:8px;border-top:1px dashed var(--border)}
.gc-shiptile__price.is-free{color:var(--green-dark)}

/* Dodatki wtyczek pod kafelkami (punkt odbioru, mapa) */
.gc-ship-extra:not(:empty){margin-top:14px;display:flex;flex-direction:column;gap:12px}

/* Wiersze wtyczek (InPost, DPD, Apaczka) w prawdziwej tabeli — wyświetlane jako bloki */
.gc-ship-extra__table,.gc-ship-extra__table>tbody,.gc-ship-extra__table>tbody>tr,.gc-ship-extra__table>tbody>tr>td,.gc-ship-extra__table>tbody>tr>th{display:block;width:auto;margin:0;padding:0;border:0;background:none;text-align:left}
.gc-ship-extra__table{border-collapse:separate;border-spacing:0}
.gc-ship-extra__table>tbody{display:flex;flex-direction:column;gap:12px}
.gc-ship-extra__table>tbody>tr:not(:has(td *,th *)){display:none}

/* Punkt odbioru — wspólny wygląd karty (paczkomat InPost, DPD Pickup) */
.gc-ship-extra .paczkomat_id_wrapper,
.gc-ship-extra__table td:has(.js--dpd-pickup-select-wrap){position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:10px;row-gap:8px;align-items:end;
  grid-template-areas:"label label" "field map";padding:14px 16px 16px;background:#FCFAF4;border:1px dashed var(--brand);border-radius:12px;animation:gc-slide-in .25s ease-out;transition:border-color .18s,background .18s}
.gc-ship-extra .gc-point.is-selected{border-style:solid;border-color:#CCE3BC;background:#F6FAF1}
.gc-ship-extra .gc-point.has-error{border-style:solid;border-color:#F0C8C0;background:#FDF6F4}
/* Status w prawym górnym rogu */
.gc-ship-extra .paczkomat_id_wrapper::after,
.gc-ship-extra__table td:has(.js--dpd-pickup-select-wrap)::after{content:"Wymagane";position:absolute;top:12px;right:14px;padding:3px 9px;border-radius:var(--r-pill);
  background:#fff;border:1px solid var(--border);font-size:11.5px;font-weight:600;color:var(--muted);line-height:1.3}
.gc-ship-extra .gc-point.is-selected::after{content:"✓ Wybrano";background:transparent;border-color:transparent;color:var(--green-dark)}
.gc-ship-extra .gc-point.has-error::after{border-color:#F0C8C0;color:var(--sale)}
/* Etykieta z pinezką: „Paczkomat *" (InPost) / „DPD Pickup:" (DPD) */
.woocommerce-checkout.gc-checkout .gc-ship-extra .paczkomat_id_wrapper label{grid-area:label;display:block;position:relative;margin:0 90px 2px 0;padding-left:26px;
  font-family:var(--sans);font-size:14px;font-weight:600;color:var(--ink);line-height:1.3}
.gc-ship-extra__table td:has(.js--dpd-pickup-select-wrap)>div:first-child{grid-area:label;display:block;position:relative;margin:0 90px 2px 0;padding-left:26px;
  font-family:var(--sans);font-size:14px;font-weight:600;color:var(--ink);line-height:1.3}
.woocommerce-checkout.gc-checkout .gc-ship-extra .paczkomat_id_wrapper label::before{content:"";position:absolute;left:0;top:50%;margin-top:-9px;width:18px;height:18px;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23332B70' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E")}
.gc-ship-extra__table td:has(.js--dpd-pickup-select-wrap)>div:first-child::before{content:"";position:absolute;left:0;top:50%;margin-top:-9px;width:18px;height:18px;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23332B70' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E")}
.woocommerce-checkout.gc-checkout .gc-ship-extra .gc-point.is-selected label::before,
.gc-ship-extra__table td.gc-point.is-selected>div:first-child::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2356A546' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E")}
.gc-ship-extra__table td:has(.js--dpd-pickup-select-wrap)>div:first-child strong{font-weight:600}
.woocommerce-checkout.gc-checkout .gc-ship-extra .paczkomat_id_wrapper .required{color:var(--sale);text-decoration:none;border:0}
/* Pole: InPost p#paczkomat_id_field (label w wierszu 1 przez grid-column), DPD .js--dpd-pickup-select-wrap */
.woocommerce-checkout.gc-checkout .gc-ship-extra .paczkomat_id_wrapper>p.form-row{display:contents;margin:0;padding:0}
.woocommerce-checkout.gc-checkout .gc-ship-extra .paczkomat_id_wrapper>p.form-row.hidden{display:none!important}
/* clearfix WC (.form-row::before/::after) przy display:contents tworzył puste wiersze siatki */
.woocommerce-checkout.gc-checkout .gc-ship-extra .paczkomat_id_wrapper>p.form-row::before,.woocommerce-checkout.gc-checkout .gc-ship-extra .paczkomat_id_wrapper>p.form-row::after{content:none;display:none}
.woocommerce-checkout.gc-checkout .gc-ship-extra .paczkomat_id_wrapper span.woocommerce-input-wrapper{grid-area:field;display:block;margin:0;min-width:0}
.gc-ship-extra__table td:has(.js--dpd-pickup-select-wrap)>.js--dpd-pickup-select-wrap{grid-area:field;min-width:0}
.woocommerce-checkout.gc-checkout .gc-ship-extra .js--dpd-pickup-select-wrap p.form-row{margin:0;padding:0}
.gc-ship-extra .paczkomat_id_wrapper .select2-container,.gc-ship-extra .js--dpd-pickup-select-wrap .select2-container{width:100%!important;max-width:none!important;display:block}
/* Przycisk mapy (wtyczki obsługują kliknięcie: Geowidget InPost, iframe DPD) */
.woocommerce-checkout.gc-checkout .gc-ship-extra a#open-geowidget,
.woocommerce-checkout.gc-checkout .gc-ship-extra a.js--choose-point-dpd{grid-area:map;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;margin:0;padding:0 16px;
  border-radius:var(--r-md);background:#fff;border:1.5px solid var(--brand);color:var(--brand);font-size:14px;font-weight:600;line-height:1;white-space:nowrap;text-decoration:none;box-shadow:none;transition:background .15s,color .15s}
.woocommerce-checkout.gc-checkout .gc-ship-extra a#open-geowidget::before,
.woocommerce-checkout.gc-checkout .gc-ship-extra a.js--choose-point-dpd::before{content:"";width:16px;height:16px;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23332B70' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E")}
.woocommerce-checkout.gc-checkout .gc-ship-extra a#open-geowidget:hover,
.woocommerce-checkout.gc-checkout .gc-ship-extra a.js--choose-point-dpd:hover{background:var(--brand);color:#fff}
.woocommerce-checkout.gc-checkout .gc-ship-extra a#open-geowidget:hover::before,
.woocommerce-checkout.gc-checkout .gc-ship-extra a.js--choose-point-dpd:hover::before{filter:brightness(0) invert(1)}
.gc-ship-extra .js--dpd-pickup-point-details,.gc-ship-extra .js--popup-container-dpd{grid-column:1/-1}
.gc-ship-extra .js--dpd-pickup-point-details:empty,.gc-ship-extra .js--popup-container-dpd:empty{display:none}
.gc-ship-extra .js--dpd-pickup-point-details{font-size:13px;color:var(--text)}
/* Komunikat „wybierz punkt" (checkout.js) */
.gc-ship-extra .gc-point-error{grid-column:1/-1;display:flex;align-items:center;gap:9px;font-size:13px;font-weight:600;color:#9B3320}
.gc-ship-extra .gc-point-error::before{content:"!";flex:none;width:20px;height:20px;border-radius:50%;background:var(--sale);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:800}

/* Punkt odbioru — mapa Apaczka.pl */
.gc-ship-extra .apaczka-parcel-machine{display:flex;flex-direction:column;gap:10px;padding:14px 16px;background:#FCFAF4;border:1px dashed var(--brand);border-radius:12px}
.gc-ship-extra .apaczka-parcel-machine.gc-point.is-selected{border-style:solid;border-color:#CCE3BC;background:#F6FAF1}
.gc-ship-extra .apaczka-parcel-machine.gc-point.has-error{border-style:solid;border-color:#F0C8C0;background:#FDF6F4}
.gc-ship-extra .apaczka-parcel-machine-label{font-size:0;display:flex;align-items:center;gap:10px;text-align:left}
.gc-ship-extra .apaczka-parcel-machine-label::before{content:"";flex:none;width:18px;height:18px;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23332B70' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E")}
.gc-ship-extra .apaczka-parcel-machine-label::after{content:"Punkt odbioru (wymagany)";font-size:14px;font-weight:600;color:var(--ink)}
.gc-ship-extra .apaczka-parcel-machine-select{display:flex;flex-direction:column;align-items:flex-start;gap:8px;text-align:left;padding-left:28px}
.gc-ship-extra .apaczka-parcel-machine-select::before{content:"Wybierz punkt na mapie — bez tego nie wyślemy paczki.";font-size:12px;color:var(--muted);margin-top:-6px}
.woocommerce-checkout.gc-checkout .gc-ship-extra #apaczka_pl_geowidget_classic{height:44px;padding:0 18px;margin:0;border-radius:var(--r-md);background:#fff!important;
  border:1.5px solid var(--brand)!important;color:var(--brand)!important;font-size:14px!important;font-weight:600!important;line-height:1!important;box-shadow:none!important;cursor:pointer}
.woocommerce-checkout.gc-checkout .gc-ship-extra #apaczka_pl_geowidget_classic:hover{background:var(--brand)!important;color:#fff!important}
.gc-ship-extra #selected-parcel-machine{font-size:13px;color:var(--text);line-height:1.45}

/* Kafelki płatności: li jako display:contents — kafelki w siatce, opis wybranej metody pod nimi */
.woocommerce-checkout.gc-checkout #payment{background:transparent;border-radius:0}
/* flex, nie grid: pełnoszeroki opis w siatce blokowałby zwijanie pustych kolumn (kafelki robiły się węższe) */
.woocommerce-checkout.gc-checkout #payment ul.wc_payment_methods{display:flex;flex-wrap:wrap;gap:14px 12px;
  list-style:none;margin:0 0 18px;padding:4px 0 0;border:0}
.woocommerce-checkout.gc-checkout #payment ul.wc_payment_methods>li.wc_payment_method{display:contents}
/* Clearfix WooCommerce (::before/::after) zajmowałby komórki siatki — kafelki układały się po skosie */
.woocommerce-checkout.gc-checkout #payment ul.wc_payment_methods::before,.woocommerce-checkout.gc-checkout #payment ul.wc_payment_methods::after,
.woocommerce-checkout.gc-checkout #payment ul.wc_payment_methods>li::before,.woocommerce-checkout.gc-checkout #payment ul.wc_payment_methods>li::after{content:none;display:none}
.woocommerce-checkout.gc-checkout #payment ul.wc_payment_methods>li.woocommerce-info{flex-basis:100%}
.gc-paytile{position:relative;flex:1 1 185px;display:flex;flex-direction:column;gap:10px;padding:16px;background:#fff;border:1px solid var(--border);border-radius:12px;
  cursor:pointer;margin:0;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}
.gc-paytile:hover{border-color:var(--border-strong)}
.gc-paytile.is-active{background:#EEEDF8;border-color:var(--indigo);box-shadow:inset 0 0 0 .5px var(--indigo)}
.gc-paytile.is-active .gc-tile-dot{border:6px solid var(--indigo)}
.gc-paytile:has(.gc-paytile__radio:focus-visible){box-shadow:0 0 0 3px rgba(100,188,81,.35)}
.woocommerce-checkout.gc-checkout #payment .gc-paytile__radio{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none}
.gc-paytile__top{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:24px}
.gc-paytile__icon{display:inline-flex;align-items:center;justify-content:flex-end;color:var(--brand);min-width:0}
.woocommerce-checkout.gc-checkout #payment .gc-paytile__icon img{height:22px;max-height:22px;max-width:92px;width:auto;margin:0;float:none;position:static;object-fit:contain}
/* SVG bez wymiarów (np. logo BLIK) przy width:auto miało 0 px */
.woocommerce-checkout.gc-checkout #payment .gc-paytile__icon img[src$=".svg"]{width:44px}
.gc-paytile__body{display:flex;flex-direction:column;min-width:0}
.gc-paytile__name{font-size:15px;font-weight:600;color:var(--ink);line-height:1.25}
.gc-paytile__desc{font-size:12px;color:var(--muted);margin-top:3px;line-height:1.35}
/* Opis wybranej płatności — zwarty, pod kafelkami */
.woocommerce-checkout.gc-checkout #payment div.payment_box{order:1;flex:1 1 100%;margin:0;padding:10px 14px;background:var(--bg-paper);
  border:1px solid var(--hairline);border-radius:10px;font-size:13px;line-height:1.45;color:var(--text)}
.woocommerce-checkout.gc-checkout #payment div.payment_box::before{display:none}
.woocommerce-checkout.gc-checkout #payment div.payment_box p{margin:0}
.woocommerce-checkout.gc-checkout #payment div.payment_box p+p,.woocommerce-checkout.gc-checkout #payment div.payment_box p+fieldset{margin-top:6px}
.woocommerce-checkout.gc-checkout #payment div.payment_box fieldset{margin:6px 0 0;padding:0;border:0}
.woocommerce-checkout.gc-checkout #payment div.payment_box :is(input,select){margin-bottom:0}

/* Darmowa dostawa — karta nad kodem rabatowym */
.gc-cofree{background:#FCFAF4;border:1px solid var(--border);border-radius:12px;padding:14px 16px}
.gc-cofree[hidden]{display:none}
.gc-cofree__row{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--ink);line-height:1.35}
.gc-cofree__ic{display:inline-flex;color:var(--brand);flex:none}
.gc-cofree__txt strong{color:var(--brand);font-variant-numeric:tabular-nums;white-space:nowrap}
.gc-cofree__bar{height:6px;margin-top:10px;background:#EFE6D2;border-radius:3px;overflow:hidden}
.gc-cofree__bar span{display:block;height:100%;background:linear-gradient(90deg,var(--green) 0%,#7ED06A 100%);border-radius:3px;transition:width .45s cubic-bezier(.4,0,.2,1)}
.gc-cofree__foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;font-size:12px;color:var(--muted)}
.gc-cofree__foot a{display:inline-flex;align-items:center;gap:3px;font-weight:600;color:var(--brand)}
.gc-cofree__foot a:hover{color:var(--green-dark)}
.gc-cofree.is-free{background:#F1F7EC;border-color:#CCE3BC}
.gc-cofree.is-free .gc-cofree__row,.gc-cofree.is-free .gc-cofree__ic,.gc-cofree.is-free .gc-cofree__txt strong{color:var(--green-dark)}

@media (max-width:560px){
  .gc-shiptiles{grid-template-columns:1fr}
  .gc-paytile{flex-basis:100%}
  .gc-shiptile,.gc-paytile{flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:14px}
  .gc-shiptile__body,.gc-paytile__body{flex:1 1 150px}
  .gc-shiptile__price{padding-top:0;border-top:0;margin-left:auto}
  .gc-paytile__top{justify-content:flex-start}
  .gc-ship-extra .paczkomat_id_wrapper,.gc-ship-extra__table td:has(.js--dpd-pickup-select-wrap){grid-template-columns:1fr;grid-template-areas:"label" "field" "map"}
  .woocommerce-checkout.gc-checkout .gc-ship-extra a#open-geowidget,.woocommerce-checkout.gc-checkout .gc-ship-extra a.js--choose-point-dpd{width:100%}
}
@media (prefers-reduced-motion:reduce){.gc-ship-extra .paczkomat_id_wrapper,.gc-ship-extra__table td{animation:none!important}.gc-cofree__bar span{transition:none}}

/* Checkout — rozwijane listy select2/selectWoo (punkty InPost/DPD, kraj) w stylu sklepu */
body.woocommerce-checkout .select2-dropdown{border:1px solid var(--border-strong);border-radius:10px;overflow:hidden;box-shadow:0 18px 40px rgba(30,27,80,.14);background:#fff}
body.woocommerce-checkout .select2-container--open .select2-dropdown--below{margin-top:4px;border-top:1px solid var(--border-strong)}
body.woocommerce-checkout .select2-container--open .select2-dropdown--above{margin-top:-4px;border-bottom:1px solid var(--border-strong)}
body.woocommerce-checkout .select2-search--dropdown{padding:8px}
body.woocommerce-checkout .select2-container--default .select2-search--dropdown .select2-search__field{height:40px;padding:0 12px;border:1.5px solid var(--border);border-radius:8px;font-size:14px;color:var(--ink);outline:0}
body.woocommerce-checkout .select2-container--default .select2-search--dropdown .select2-search__field:focus{border-color:var(--brand)}
body.woocommerce-checkout .select2-results__option{padding:9px 12px;font-size:14px;line-height:1.35;color:var(--ink)}
body.woocommerce-checkout .select2-container--default .select2-results__option--highlighted[aria-selected],
body.woocommerce-checkout .select2-container--default .select2-results__option--highlighted[data-selected]{background:#EEEDF8;color:var(--indigo)}
body.woocommerce-checkout .select2-container--default .select2-results__option[aria-selected=true],
body.woocommerce-checkout .select2-container--default .select2-results__option[data-selected=true]{background:var(--bg-warm);color:var(--ink);font-weight:600}
body.woocommerce-checkout .select2-results__option.select2-results__message{color:var(--muted);font-size:13px}

/* Mapa paczkomatów InPost (Geowidget) — przyciemnione tło i karta jak reszta okien */
body > div:has(> #widget-modal){background:rgba(15,13,56,.55)}
#widget-modal{border-radius:14px;overflow:hidden;box-shadow:0 24px 60px rgba(15,13,56,.35);max-width:calc(100vw - 32px);max-height:calc(100vh - 32px)}
/* Mapa DPD (iframe) — zaokrąglenie */
#dpd_popup #dpd_map{border-radius:14px;background:#fff}

/* ============================================================
   16n. CHECKOUT — komunikaty przy sekcjach i nakładka ładowania
   ============================================================ */
/* Błędy pokazujemy w sekcji, której dotyczą (patrz checkout.js), nie nad formularzem */
.gc-sec-alert{margin:0 0 18px;padding:12px 16px;border-radius:var(--r-md);border:1px solid #F0C8C0;background:#FBEDEA;color:#9B3320;
  font-size:14px;font-weight:500;line-height:1.45;animation:gc-fade-slide .2s ease}
.gc-sec-alert:focus{outline:none}
.gc-sec-alert ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.gc-sec-alert li{display:flex;align-items:flex-start;gap:9px}
.gc-sec-alert li::before{content:"!";flex:none;width:20px;height:20px;margin-top:1px;border-radius:50%;background:var(--sale);color:#fff;
  display:grid;place-items:center;font-size:12px;font-weight:800;line-height:1}
.gc-sec-alert a{color:inherit;font-weight:700;text-decoration:underline;text-underline-offset:2px}
.gc-sec-alert--notice{border-color:#DCE4C3;background:var(--trust-bg);color:var(--indigo)}
.gc-sec-alert--notice li::before{content:"i";background:var(--indigo)}

/* Gdyby WooCommerce zdążył wstawić grupę błędów nad formularzem — bez zielonej obwódki focusu */
.woocommerce-checkout .woocommerce-NoticeGroup{outline:none!important}
.gc-woo-content ul.woocommerce-error::before,.gc-woo-content .woocommerce-info::before,.gc-woo-content .woocommerce-message::before{display:none}

/* Nakładka ładowania WooCommerce — pod nagłówkiem, w kolorach sklepu */
.woocommerce-checkout .blockUI.blockOverlay{z-index:50!important;opacity:1!important;background:rgba(251,248,242,.72)!important;
  backdrop-filter:blur(1px);border-radius:var(--r-lg)}
/* Kółko na środku ekranu, nie środku formularza — przy długim formularzu było poza widokiem */
.woocommerce-checkout .blockUI.blockOverlay::before{position:fixed;top:50%;left:50%;width:34px;height:34px;margin:-17px 0 0 -17px;background:none;border:3px solid rgba(51,43,112,.18);
  border-top-color:var(--brand);border-radius:50%;animation:gc-spin .7s linear infinite;font-size:0}
@keyframes gc-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.woocommerce-checkout .blockUI.blockOverlay::before{animation-duration:2s}}

/* Potwierdzenie dodania na stronie produktu: przycisk + pigułka GSAP na środku (zamiast dymka w rogu) */
.gc-pdp__atc.is-added{background:var(--green-dark)}
.gc-pdp__atc.is-added .gc-qv__added{gap:10px}
.gc-pdp-ship{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);z-index:120;display:flex;justify-content:center;pointer-events:none}
.gc-qv-ship--pdp{position:relative;top:auto;left:auto;right:auto;margin:0;pointer-events:auto}
@media (max-width:760px){
  /* nad dymkiem czatu, tekst zawijany (wersja z quick-view ma nowrap i uciekala poza ekran) */
  .gc-pdp-ship{bottom:86px;left:16px;right:16px;transform:none}
  .gc-qv-ship--pdp{width:100%;max-width:none;white-space:normal;padding-right:16px}
  .gc-qv-ship--pdp .gc-qv-ship__text{font-size:13px;line-height:1.3}
  .gc-qv-ship--pdp .gc-qv-ship__bar{min-width:0;width:100%}
}

/* ============================================================
   16o. STRONA PŁATNOŚCI (order-pay) I POTWIERDZENIE ZAMÓWIENIA
   ============================================================ */

/* --- Wspólny kontener obu wariantów order-pay (wybór metody i strona bramki) --- */
.gc-paypage{max-width:var(--container);margin-inline:auto;padding:0 32px}
.gc-paypage .gc-cart-head{padding-bottom:14px}
.gc-pay-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start;padding-top:8px}
.gc-pay-main{display:flex;flex-direction:column;gap:16px;min-width:0}
.gc-pay-form{margin:0}
.gc-osum__ship-card{padding:18px 22px}
.gc-osum__ship-method{font-size:13.5px;font-weight:600;color:var(--ink);margin-bottom:6px}
.gc-osum__addr{font-style:normal;font-size:13px;line-height:1.5;color:var(--muted)}
.gc-osum__total-lbl{font-weight:600;color:var(--ink)}

/* --- Strona bramki: kafelki banków Przelewy24 --- */
/* Wtyczka układa je na floatach (135×71 px, ramka #eee) i chowa część w .morePayMethods,
   którą jQuery pokazuje przez inline display — dlatego kafelki muszą zostać inline-block
   (grid/flex na rodzicu rozsypałby się po slideDown). */
.gc-payreceipt__lead{font-size:14px;color:var(--muted);margin:-8px 0 18px;line-height:1.5}
.gc-payreceipt #p24-bank-grid{list-style:none;margin:0;padding:0;font-size:0}
.gc-payreceipt .morePayMethods{margin-top:10px}
.gc-payreceipt a.bank-box,.gc-payreceipt .bank-box{float:none;display:inline-block;vertical-align:top;
  width:calc(20% - 10px);min-width:104px;height:auto;margin:0 10px 10px 0;padding:12px 8px 10px;
  background:#fff;border:1px solid var(--border);border-radius:12px;text-align:center;
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.gc-payreceipt a.bank-box:hover,.gc-payreceipt .bank-box:hover{border-color:var(--indigo);box-shadow:var(--shadow-soft);transform:translateY(-2px)}
.gc-payreceipt a.bank-box:focus-visible{outline:3px solid rgba(100,188,81,.45);outline-offset:2px}
.gc-payreceipt .bank-logo{width:100%;height:34px;background-size:contain;background-position:center;font-size:9px}
.gc-payreceipt .bank-name{height:auto;min-height:26px;margin-top:8px;font-size:11px;line-height:1.25;color:var(--muted);
  display:flex;align-items:center;justify-content:center}
.gc-payreceipt a.bank-box.selected{border-color:var(--indigo);background:#EEEDF8}
.gc-payreceipt a.bank-box.selected:before{content:none}
/* „Więcej metod płatności" — wtyczka rysuje kreskę z glifem FontAwesome; zamieniamy na pigułkę GC */
.gc-payreceipt .moreStuff{max-width:none;width:100%;margin:6px 0 0;padding:0;border-bottom:0;text-align:center}
.gc-payreceipt .moreStuff:before{content:"Więcej metod płatności";font-family:var(--sans);font-size:13px;font-weight:600;
  display:inline-block;position:static;top:auto;padding:9px 20px;border-radius:var(--r-pill);
  border:1px solid var(--border-strong);background:#fff;color:var(--brand)}
.gc-payreceipt .moreStuff:hover:before{border-color:var(--brand);background:var(--bg-warm)}

/* Formularz potwierdzenia bramki (przycisk, nota o obowiązku zapłaty, anulowanie) */
.gc-payreceipt #payment{background:none!important;padding:0;border:0}
.gc-payreceipt #przelewy_payment_form{display:flex;flex-direction:column;align-items:center;gap:10px;
  margin-top:20px;padding-top:20px;border-top:1px solid var(--hairline)}
.gc-payreceipt #przelewy_payment_form>p{order:3;float:none!important;width:100%!important;
  margin:0;text-align:center!important;font-size:12px!important;color:var(--muted)}
.gc-payreceipt #przelewy_payment_form input#place_order{order:1;display:inline-flex;align-items:center;justify-content:center;width:100%;
  font-family:var(--sans);font-weight:600;font-size:var(--fs-body);line-height:1;padding:14px 26px;
  border:0;border-radius:var(--r-pill);background:var(--green);color:#fff;box-shadow:var(--shadow-cta);cursor:pointer;
  transition:background var(--transition),transform var(--transition)}
.gc-payreceipt #przelewy_payment_form input#place_order:hover{background:var(--green-dark)}
.gc-payreceipt #przelewy_payment_form input#place_order:active{transform:scale(.97)}
/* Anulowanie to akcja poboczna — bez ramki i tła, wyśrodkowana pod przyciskiem płatności */
.gc-payreceipt #przelewy_payment_form a.button.cancel{order:2;background:none;color:var(--muted);border:0;
  padding:2px 8px;font-size:13.5px;font-weight:600;text-decoration:none}
.gc-payreceipt #przelewy_payment_form a.button.cancel:hover{color:var(--sale);text-decoration:underline;text-underline-offset:3px}
.gc-payreceipt label{font-size:13.5px;color:var(--ink)}
/* Ekran „za chwilę nastąpi przekierowanie" */
#p24-dynamic-whole-background{position:fixed;inset:0;z-index:100010;display:grid;place-items:center;background:rgba(251,248,242,.92);backdrop-filter:blur(2px)}
#p24-dynamic-whole-background .content{font-family:var(--serif);font-size:20px;color:var(--brand);text-align:center;max-width:420px;padding:0 24px;line-height:1.4}

/* Gdyby bramka nie miała własnego ekranu, WooCommerce pokazuje listę szczegółów zamówienia */
.gc-paypage ul.order_details{list-style:none;display:flex;flex-wrap:wrap;gap:10px 28px;margin:0 0 18px;padding:16px 20px;
  background:var(--bg-warm);border:1px solid var(--border);border-radius:var(--r-lg)}
.gc-paypage ul.order_details li{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);
  display:flex;flex-direction:column;gap:3px}
.gc-paypage ul.order_details li strong{font-size:14.5px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--ink)}

/* --- Potwierdzenie zamówienia (order-received) --- */
.gc-ty{max-width:var(--container);margin-inline:auto;padding:0 32px}
.gc-ty__hero{text-align:center;max-width:680px;margin:0 auto;padding:16px 0 30px}
.gc-ty__check{display:inline-flex;align-items:center;justify-content:center;width:68px;height:68px;border-radius:50%;
  background:var(--green);color:#fff;margin-bottom:18px;box-shadow:0 10px 26px rgba(100,188,81,.35);
  animation:gc-ty-pop .5s cubic-bezier(.2,1.3,.4,1) both}
.gc-ty__check--fail{background:var(--sale);box-shadow:0 10px 26px rgba(200,68,44,.3);font-family:var(--serif);font-size:34px;font-weight:700}
@keyframes gc-ty-pop{from{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}
@media (prefers-reduced-motion:reduce){.gc-ty__check{animation:none}}
.gc-ty__eyebrow{display:block;margin-bottom:10px}
.gc-ty__title{font-family:var(--serif);font-size:40px;font-weight:600;color:var(--brand);margin:0 0 10px;letter-spacing:-.5px;line-height:1.1}
.gc-ty__title em{font-style:italic;color:var(--indigo)}
.gc-ty__lead{font-size:15.5px;line-height:1.55;color:var(--muted);margin:0}
.gc-ty__lead strong{color:var(--ink);font-weight:600}

.gc-ty__meta{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border);
  border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;margin-bottom:18px}
.gc-ty__metaitem{display:flex;flex-direction:column;gap:5px;min-width:0;padding:16px 20px;background:#fff}
.gc-ty__metak{font-size:10.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
.gc-ty__metav{font-size:15px;font-weight:600;color:var(--ink);line-height:1.3;overflow-wrap:anywhere}
.gc-ty__metav--price{font-family:var(--serif);font-size:20px;color:var(--indigo);font-variant-numeric:tabular-nums}
.gc-ty__badge{align-self:flex-start;margin-top:2px;font-size:10.5px;font-weight:700;padding:3px 9px;border-radius:var(--r-pill);
  background:var(--bg-chip);color:var(--muted)}
.gc-ty__badge.is-paid{background:var(--trust-bg);color:var(--green-dark)}

.gc-ty__grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:start}
.gc-ty__col{display:flex;flex-direction:column;gap:18px;min-width:0}
.gc-ty__card{background:#fff;border:1px solid var(--hairline);border-radius:var(--r-lg);padding:26px;box-shadow:var(--shadow-card)}
.gc-ty__card--tight{padding:20px 22px}
.gc-ty__cardtitle{display:flex;align-items:center;gap:10px;font-family:var(--serif);font-size:19px;font-weight:600;
  color:var(--brand);margin:0 0 16px;letter-spacing:-.2px}
.gc-ty__cardtitle svg{color:var(--accent);flex:none}
.gc-ty__count{margin-left:auto;font-family:var(--sans);font-size:11.5px;font-weight:600;color:var(--muted);
  background:var(--bg-chip);border-radius:var(--r-pill);padding:4px 10px}

/* Oś „co dalej" */
.gc-ty__steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.gc-ty__steps li{position:relative;display:flex;gap:14px;padding:0 0 18px 0}
.gc-ty__steps li:last-child{padding-bottom:0}
.gc-ty__steps li:not(:last-child)::before{content:"";position:absolute;left:15px;top:32px;bottom:2px;width:2px;background:var(--border)}
.gc-ty__steps li.is-done:not(:last-child)::before{background:var(--green)}
.gc-ty__stepic{position:relative;z-index:1;flex:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;
  background:#fff;border:1.5px solid var(--border-strong);color:var(--muted)}
.gc-ty__steps li.is-done .gc-ty__stepic{background:var(--green);border-color:var(--green);color:#fff}
.gc-ty__steptxt{display:flex;flex-direction:column;gap:2px;padding-top:4px;font-size:13.5px;color:var(--muted);line-height:1.45}
.gc-ty__steptxt strong{font-size:14.5px;font-weight:600;color:var(--ink)}

/* Pozycje zamówienia */
.gc-ty__items{display:flex;flex-direction:column;gap:14px;padding-bottom:16px;border-bottom:1px solid var(--hairline)}
.gc-ty__item{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:14px;align-items:center}
.gc-ty__thumb{position:relative;width:56px;height:56px;flex:none}
.gc-ty__thumb a{display:block;line-height:0}
.gc-ty__thumb img{width:56px;height:56px;border-radius:10px;object-fit:cover;background:var(--bg-warm);border:1px solid var(--border)}
.gc-ty__qty{position:absolute;top:-7px;right:-7px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:var(--indigo);
  color:#fff;font-size:11px;font-weight:700;display:grid;place-items:center;font-variant-numeric:tabular-nums}
.gc-ty__itemname{font-size:14px;font-weight:600;color:var(--ink);line-height:1.3}
.gc-ty__itemname a{color:inherit;text-decoration:none}
.gc-ty__itemname a:hover{color:var(--brand);text-decoration:underline;text-underline-offset:2px}
.gc-ty__itemmeta{font-size:12px;color:var(--muted);margin-top:3px}
.gc-ty__itemprice{font-size:14px;font-weight:600;color:var(--ink);white-space:nowrap;font-variant-numeric:tabular-nums}
.gc-ty__totals{padding-top:14px;display:flex;flex-direction:column;gap:2px}
.gc-ty__totalrow{display:flex;justify-content:space-between;gap:16px;font-size:13.5px;color:var(--muted);padding:5px 0}
.gc-ty__totalrow>span:last-child{color:var(--ink);font-variant-numeric:tabular-nums}
.gc-ty__totalrow.is-total{margin-top:8px;padding-top:14px;border-top:1px solid var(--border);align-items:baseline}
.gc-ty__totalrow.is-total>span:first-child{font-size:15px;font-weight:600;color:var(--ink)}
.gc-ty__totalrow.is-total>span:last-child{font-family:var(--serif);font-size:24px;font-weight:600;color:var(--indigo);font-variant-numeric:tabular-nums}
.gc-ty__totalrow.is-total small,.gc-ty__totalrow.is-total small span{font-family:var(--sans);font-size:11px;font-weight:500;color:var(--muted)}
.gc-ty__totalrow.is-total small{font-size:11px;font-weight:500;color:var(--muted)}
.gc-ty__note{margin-top:16px;padding:12px 16px;border-radius:var(--r-md);background:var(--bg-warm);border:1px solid var(--border);
  font-size:13px;color:var(--ink);line-height:1.5}

/* Prawa kolumna */
.gc-ty__col--side{position:sticky;top:24px}
.gc-ty__ship{font-size:13.5px;font-weight:600;color:var(--ink);margin-bottom:8px}
.gc-ty__addr{font-style:normal;font-size:13.5px;line-height:1.55;color:var(--muted)}
.gc-ty__contact{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:13px;color:var(--muted)}
.gc-ty__contact svg{color:var(--accent);flex:none}
.gc-ty__gateway{font-size:13.5px;line-height:1.55;color:var(--ink)}
.gc-ty__gateway h2:not(.gc-ty__cardtitle),.gc-ty__gateway h3{font-family:var(--serif);font-size:15px;color:var(--brand);margin:0 0 8px}
.gc-ty__gateway p{margin:0 0 8px}
.gc-ty__gateway ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}
.gc-ty__gateway li{display:flex;justify-content:space-between;gap:12px;font-size:12.5px;color:var(--muted)}
.gc-ty__gateway li strong{color:var(--ink);text-align:right;overflow-wrap:anywhere}
.gc-ty__card--help{background:var(--bg-warm)}
.gc-ty__card--help p{font-size:13.5px;line-height:1.55;color:var(--muted);margin:0 0 12px}
.gc-ty__helplinks{display:flex;flex-direction:column;gap:8px}
.gc-ty__helplinks a{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:600;color:var(--brand);text-decoration:none}
.gc-ty__helplinks a:hover{text-decoration:underline;text-underline-offset:3px}
.gc-ty__helplinks svg{color:var(--accent);flex:none}

.gc-ty__actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;padding-top:26px}
.gc-ty__trust{padding-top:18px}

/* Responsywność obu stron */
@media (max-width:1024px){
  .gc-pay-grid,.gc-ty__grid{grid-template-columns:1fr}
  .gc-pay-grid .gc-checkout__rail{position:static}
  .gc-ty__col--side{position:static}
  .gc-payreceipt a.bank-box,.gc-payreceipt .bank-box{width:calc(16.666% - 10px)}
}
@media (max-width:760px){
  .gc-paypage,.gc-ty{padding:0 16px}
  .gc-ty__title{font-size:30px}
  .gc-ty__meta{grid-template-columns:1fr 1fr}
  .gc-ty__card{padding:20px}
  .gc-payreceipt a.bank-box,.gc-payreceipt .bank-box{width:calc(25% - 10px)}
  .gc-payreceipt #przelewy_payment_form input#place_order{width:100%}
}
@media (max-width:520px){
  .gc-ty__meta{grid-template-columns:1fr}
  .gc-ty__item{grid-template-columns:48px minmax(0,1fr) auto;gap:10px}
  .gc-ty__thumb,.gc-ty__thumb img{width:48px;height:48px}
  .gc-payreceipt a.bank-box,.gc-payreceipt .bank-box{width:calc(33.333% - 8px);min-width:0;margin-right:8px;padding:10px 4px 8px}
  .gc-payreceipt .bank-name{font-size:10px}
  .gc-ty__actions .gc-btn{width:100%}
}

/* Wstawki wtyczek wysyłkowych na potwierdzeniu (śledzenie FS, punkt DPD, zwroty InPost) */
.gc-ty__plugin{font-size:13.5px;line-height:1.55;color:var(--ink)}
.gc-ty__plugin h2:not(.gc-ty__cardtitle),.gc-ty__plugin h3{font-family:var(--serif);font-size:16px;color:var(--brand);margin:0 0 8px}
.gc-ty__plugin p{margin:0 0 10px}
.gc-ty__plugin p:last-child{margin-bottom:0}
.gc-ty__plugin table{width:100%;border-collapse:collapse;font-size:13px}
.gc-ty__plugin th,.gc-ty__plugin td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--hairline)}
.gc-ty__plugin th{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.gc-ty__plugin a:not(.button){color:var(--brand);font-weight:600;text-decoration:underline;text-underline-offset:2px}
.gc-ty__plugin a.button,.gc-ty__plugin .button{display:inline-flex;align-items:center;justify-content:center;background:#fff;color:var(--brand);
  border:1px solid var(--border-strong);border-radius:var(--r-pill);padding:10px 18px;font-size:13.5px;font-weight:600;text-decoration:none}
.gc-ty__plugin a.button:hover,.gc-ty__plugin .button:hover{border-color:var(--brand);background:var(--bg-warm)}
.gc-ty__paybtn{margin:2px 0 12px;width:100%}

/* ============================================================
   16p. ZAMÓWIENIE NA KONCIE — adresy rozliczeniowy i wysyłki
   ============================================================ */
.gc-oaddr{margin-top:28px}
.gc-oaddr__heading{font-family:var(--serif);font-size:24px;font-weight:600;color:var(--brand);margin:0 0 14px;letter-spacing:-.2px}
.gc-oaddr__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
.gc-oaddr__grid--single{grid-template-columns:minmax(0,520px)}
.gc-oaddr__card{position:relative;background:#fff;border:1px solid var(--hairline);border-radius:var(--r-lg);padding:22px 24px;
  float:none!important;width:auto!important;margin:0!important;box-shadow:var(--shadow-card)}
.gc-oaddr__head{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.gc-oaddr__ic{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--bg-chip);color:var(--brand)}
.gc-oaddr__ic--ship{background:var(--trust-bg);color:var(--green-dark)}
.gc-oaddr__title{font-family:var(--serif);font-size:17px;font-weight:600;color:var(--brand);margin:0;letter-spacing:-.1px}
.gc-oaddr__badge{margin-left:auto;font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;
  padding:4px 9px;border-radius:var(--r-pill);background:var(--bg-chip);color:var(--muted);white-space:nowrap}
.gc-oaddr__method{display:inline-flex;align-items:center;gap:7px;margin-bottom:12px;padding:6px 12px;border-radius:var(--r-pill);
  background:var(--trust-bg);color:var(--indigo);font-size:12.5px;font-weight:600}
.gc-oaddr__method svg{color:var(--green-dark);flex:none}
.gc-oaddr__body{font-style:normal;display:flex;flex-direction:column;gap:4px;margin:0}
.gc-oaddr__name{font-size:15px;font-weight:600;color:var(--ink);line-height:1.35}
.gc-oaddr__lines{font-size:14px;line-height:1.65;color:var(--muted)}
.gc-oaddr__contact{display:flex;flex-direction:column;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid var(--hairline)}
.gc-oaddr__contact a{display:inline-flex;align-items:center;gap:9px;width:fit-content;max-width:100%;
  font-size:13.5px;font-weight:600;color:var(--brand);text-decoration:none;overflow-wrap:anywhere}
.gc-oaddr__contact a:hover{text-decoration:underline;text-underline-offset:3px}
.gc-oaddr__contact svg{color:var(--accent);flex:none}
/* Wstawki wtyczek (np. punkt odbioru) pod adresem */
.gc-oaddr__card>p{margin:12px 0 0;font-size:13.5px;line-height:1.55;color:var(--muted)}
@media (max-width:860px){
  .gc-oaddr__grid,.gc-oaddr__grid--single{grid-template-columns:1fr}
  .gc-oaddr__card{padding:20px}
}

/* „Zamów jeszcze raz" (hook woocommerce_order_details_after_order_table) — zielony przycisk sklepu */
.gc-account__content p.order-again,.gc-ty__plugin p.order-again{margin:18px 0 0}
.gc-account__content p.order-again a,.gc-ty__plugin p.order-again a,
.gc-ty__plugin a.button.order-again{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--sans);font-weight:600;font-size:var(--fs-body);line-height:1;padding:12px 22px;
  background:var(--green);color:#fff;border:0;border-radius:var(--r-pill);box-shadow:var(--shadow-cta);text-decoration:none;
  transition:background var(--transition),transform var(--transition)}
.gc-account__content p.order-again a:hover,.gc-ty__plugin p.order-again a:hover{background:var(--green-dark);color:#fff}
.gc-account__content p.order-again a:active,.gc-ty__plugin p.order-again a:active{transform:scale(.97)}

/* Punkt odbioru / śledzenie przesyłki z wtyczek — karta zamiast gołego nagłówka i listy */
.gc-pickup-card{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:18px;padding:16px 20px;
  background:var(--bg-warm);border:1px solid var(--border);border-radius:var(--r-lg)}
.gc-pickup-card__ic{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#fff;
  border:1px solid var(--border);color:var(--brand)}
.gc-pickup-card__body{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
.gc-pickup-card__label{font-size:10.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
.gc-pickup-card__val{font-size:14.5px;font-weight:600;color:var(--ink);line-height:1.4;overflow-wrap:anywhere}
.gc-pickup-card__cta{flex:none}
/* Reset stylów WooCommerce w kartach adresów: ramka wokół <address> i ikonki z fontu WooCommerce */
.gc-oaddr .gc-oaddr__body{border:0!important;padding:0!important;border-radius:0!important;width:auto}
.gc-oaddr__contact a::before,.gc-oaddr__contact p::before{content:none!important;display:none!important}
.gc-oaddr__contact a{padding:0!important;margin:0!important}

/* ============================================================
   16r. MOBILE — newsletter, slider, zabezpieczenie przed poziomym przewijaniem
   ============================================================ */
/* Pole e-mail ma domyślną szerokość z atrybutu `size` — bez tego nie zwężało się
   w wąskim kontenerze, rozpychało stopkę i całą stronę w poziomie (a wtedy menu
   mobilne, przyklejone do prawej krawędzi, uciekało poza ekran). */
.gc-newsletter__form input{min-width:0}
/* `clip` zamiast `hidden` — nie psuje position:sticky (nagłówek, szyna podsumowania) */
body{overflow-x:clip}

@media (max-width:760px){
  /* Newsletter: kolumna, formularz na pełną szerokość */
  .gc-newsletter{flex-direction:column;align-items:stretch;gap:16px;padding:22px 20px;margin-bottom:36px}
  .gc-newsletter__copy{min-width:0}
  .gc-newsletter__title{font-size:21px;line-height:1.25;text-wrap:balance}
  .gc-newsletter__form{flex:none;width:100%;min-width:0;max-width:none}
  .gc-newsletter__form input{width:100%;height:46px}
  .gc-newsletter__form .gc-btn{height:46px;padding:0 20px}

  /* Slider: treść przy dolnej krawędzi, pod nią gradient — kompaktowo */
  .gc-slider{height:min(76vh,600px);min-height:420px}
  .gc-slider__inner{align-items:flex-end;padding:28px 18px 62px}
  .gc-slider__grad{background:linear-gradient(180deg,rgba(30,27,80,.10) 0%,rgba(30,27,80,.30) 42%,rgba(30,27,80,.82) 76%,var(--indigo) 100%)!important}
  .gc-slide{width:100%}
  .gc-slide__eyebrow{font-size:10px;letter-spacing:1.4px;padding:5px 11px;margin-bottom:12px}
  .gc-slide__title{font-size:32px;letter-spacing:-.6px;line-height:1.08}
  .gc-slide__sub{font-size:14.5px;margin:10px 0 20px;max-width:none}
  .gc-slide__actions{gap:12px}
  .gc-slider__paging{right:18px;bottom:20px;gap:8px}
  .gc-slider__count{margin-right:8px;font-size:12px}
}
@media (max-width:420px){
  .gc-slide__title{font-size:29px}
  .gc-slider{min-height:400px}
}

/* Warstwy nad widgetem czatu (wtyczka trzyma się z-index:99999): menu mobilne, szybki podgląd,
   lightbox i ekran przekierowania bramki muszą przykrywać dymek czatu, nie odwrotnie. */

/* ============================================================
   16s. MOBILE — karta produktu, pasek sticky, quick-view, koszyk, kroki
   ============================================================ */
/* Etykiety przycisku „do koszyka": pełna i skrócona (pasek sticky na telefonie) */
.gc-atc-label--short{display:none}
.gc-pdp-sticky__actions{display:flex;align-items:center;gap:12px;flex:none}
.gc-pdp-sticky__qty{border-radius:10px}
.gc-pdp-sticky__qty button{width:38px;height:46px}
.gc-pdp-sticky__qty input{width:38px;height:46px;font-size:15px}
.gc-pdp-sticky__btn{height:46px}

/* Stan ładowania przycisku — reakcja natychmiast po kliknięciu, zanim wróci AJAX */
.gc-pdp__atc,.gc-qv__add{position:relative}
.gc-pdp__atc.is-loading>*,.gc-qv__add.is-loading>*{opacity:0}
.gc-pdp__atc.is-loading::after,.gc-qv__add.is-loading::after{content:"";position:absolute;top:50%;left:50%;width:22px;height:22px;
  margin:-11px 0 0 -11px;border:2.5px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:gc-spin .7s linear infinite}
@media (prefers-reduced-motion:reduce){.gc-pdp__atc.is-loading::after,.gc-qv__add.is-loading::after{animation-duration:2s}}

@media (max-width:760px){
  /* Pasek sticky: dwa rzędy — produkt z ceną, pod spodem ilość i przycisk */
  .gc-pdp-sticky__row{flex-wrap:wrap;gap:10px 12px;padding:10px 16px}
  .gc-pdp-sticky__thumb img{width:44px;height:44px}
  .gc-pdp-sticky__info{flex:1 1 0;min-width:0}
  .gc-pdp-sticky__name{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .gc-pdp-sticky__info .gc-small{display:none}
  .gc-pdp-sticky__price{font-size:19px;flex:none}
  .gc-pdp-sticky__actions{flex:1 1 100%;gap:10px}
  .gc-pdp-sticky__qty{flex:none;width:auto}
  .gc-pdp-sticky__btn{flex:1;padding:0 14px;font-size:15px}
  .gc-pdp-sticky__btn .gc-atc-label{display:none}
  .gc-pdp-sticky__btn .gc-atc-label--short{display:inline}

  /* Karta produktu: mniejszy tytuł i cena (cena musi zmieścić też tysiące) */
  .gc-pdp__title{font-size:30px;letter-spacing:-.4px}
  .gc-pdp__price{font-size:30px}
  .gc-pdp__price-box{padding:16px 0;margin-bottom:18px}
  .gc-pdp__atc{font-size:15px}

  /* Trzy kafelki pod galerią: ikona nad tekstem, bez ściskania w trzech kolumnach */
  .gc-pdp__trust{gap:8px}
  .gc-pdp__trust-item{flex-direction:column;align-items:flex-start;gap:6px;padding:10px 11px}
  .gc-pdp__trust-t{font-size:11.5px;line-height:1.25}
  .gc-pdp__trust-s{font-size:10.5px}

  /* Quick-view: tylko treść się przewija, więc „×" i zdjęcie zostają widoczne */
  .gc-qv{display:flex;flex-direction:column;overflow:hidden}
  .gc-qv__media{flex:none}
  .gc-qv__body{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain}
  .gc-qv__close{top:10px;right:10px;background:rgba(255,255,255,.94);color:var(--ink);
    box-shadow:0 2px 10px rgba(15,13,56,.2);z-index:4}

  /* Zdjęcia kaw większe — mniej pustego pola w kafelku */
  .gc-card__media{padding:12px}
  .gc-card__media img{max-width:94%;max-height:96%}

  /* Koszyk: produkt w pierwszym rzędzie, pod nim ilość, kwota i kosz */
  .gc-cartrow{grid-template-columns:auto minmax(0,1fr) auto;column-gap:12px;row-gap:12px;padding:16px;align-items:center}
  .gc-cartrow__prod{grid-column:1/-1;gap:14px;align-items:flex-start}
  .gc-cartrow__prod img{width:72px;height:84px}
  .gc-cartrow__name{font-size:16px}
  .gc-cartrow>div:nth-child(2){grid-column:1;justify-content:flex-start!important}
  .gc-cartrow__sub{grid-column:2;text-align:right;font-size:18px}
  .gc-cartrow>div:nth-child(4){grid-column:3}
  .gc-cartcard__foot{padding:14px 16px;gap:10px}
}

@media (max-width:560px){
  /* Kroki (koszyk → zamówienie → gotowe) jeden pod drugim — w rzędzie się nie mieszczą */
  .gc-stepper{flex-direction:column;align-items:flex-start;gap:10px;width:100%}
  .gc-stepper__line{display:none}
  .gc-stepper__lbl{white-space:normal}
}

@media (max-width:440px){
  /* Ilość i „Dodaj do koszyka" jedno pod drugim — w rzędzie przycisk był ściśnięty */
  /* tylko boks zakupu i quick-view — pasek sticky ma własny, dwurzędowy układ */
  .gc-pdp__atc-row,.gc-qv__buy{flex-direction:column;align-items:stretch;gap:10px}
  .gc-pdp__atc-row .gc-pdp__qty,.gc-qv__buy .gc-qtystepper{width:100%;justify-content:space-between}
  .gc-pdp__atc-row .gc-pdp__qty input{flex:1}
  /* flex:1 w kolumnie oznacza „rozciągaj wysokość" — przycisk się spłaszczał */
  .gc-pdp__atc-row .gc-pdp__atc,.gc-qv__buy .gc-qv__add{width:100%;flex:none;height:54px}
  .gc-pdp__title{font-size:27px}
  .gc-pdp__price{font-size:27px}
  /* Newsletter: pole nad przyciskiem */
  .gc-newsletter__form{flex-direction:column}
  .gc-newsletter__form .gc-btn{width:100%}
}

/* ============================================================
   16t. MOBILE — kolejność sekcji na checkoucie, wysokość pola newslettera
   ============================================================ */
/* Na telefonie najpierw produkty i kod rabatowy, dopiero potem formularz —
   wcześniej podsumowanie lądowało pod przyciskiem „Kupuję i płacę".
   `display:contents` na szynie pozwala ustawić kolejność jej kart niezależnie. */
@media (max-width:1100px){
  /* align-items:start z układu desktopowego oznaczałby w kolumnie „szerokość do treści" —
     karty miałyby różne szerokości, a karta kuponu wystawałaby poza ekran */
  .gc-checkout__cols{display:flex;flex-direction:column;gap:16px;align-items:stretch}
  .gc-checkout__rail{display:contents}
  .gc-checkout__rail #order_review{order:1}
  .gc-checkout__rail .gc-cofree{order:2}
  .gc-checkout__rail .gc-promo-card{order:3}
  .gc-checkout__main{order:4}
  .gc-checkout__rail .gc-checkout-trust{order:5}
}
@media (max-width:560px){
  /* Kod rabatowy: karta jako blok (flex-basis:100% pola rozjeżdżał się o padding karty),
     pod opisem wiersz pole + przycisk na pełną szerokość */
  .gc-promo-card{display:block;padding:16px 18px}
  .gc-promo-card__field{display:flex;gap:8px;width:auto;margin:12px 0 0}
  .gc-promo-card input{width:auto;flex:1;min-width:0}
  .gc-promo-card__field .gc-btn{flex:none}
}
@media (max-width:440px){
  /* flex:1 w kolumnie skracało pole do wysokości tekstu */
  .gc-newsletter__form input{flex:none;height:52px}
  .gc-newsletter__form .gc-btn{height:52px}
}

/* Okruszki na telefonie: jedna linia zamiast trzech — mały tekst, przewijanie w poziomie
   z delikatnym wygaszeniem na końcu (nazwa produktu i tak jest w nagłówku pod spodem). */
@media (max-width:760px){
  .gc-breadcrumb,.woocommerce-breadcrumb,.gc-pdp-main>.woocommerce-breadcrumb{
    flex-wrap:nowrap;white-space:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;
    font-size:11.5px;gap:6px;padding:12px 16px 10px;
    mask-image:linear-gradient(90deg,#000 calc(100% - 24px),transparent);
    -webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 24px),transparent)}
  .gc-breadcrumb::-webkit-scrollbar,.woocommerce-breadcrumb::-webkit-scrollbar{display:none}
  .gc-breadcrumb>*,.woocommerce-breadcrumb>*{flex:none}
  .woocommerce-breadcrumb .gc-crumb-sep svg{width:10px;height:10px}
}

@media (max-width:400px){
  /* Wąskie telefony: kwota pozycji w jednej linii obok steppera */
  .gc-cartrow{column-gap:8px}
  .gc-cartrow__sub{font-size:15px;white-space:nowrap}
  .gc-qtystepper button{width:34px}
}

/* Kontener fragmentu AJAX z podsumowaniem koszyka — bez tego pasek darmowej dostawy
   przyklejał się do karty „Podsumowanie zamówienia" (gap szyny go nie obejmował). */
[data-gc-cart-summary]{display:flex;flex-direction:column;gap:14px}

/* Promo subskrypcji w menu mobilnym — ten sam styl co w pasku kategorii, tylko na całą szerokość */
.gc-drawer__promo{display:flex;justify-content:center;width:100%;padding:12px 16px;font-size:13.5px;margin:auto 0 0}
/* Wolna przestrzeń panelu ląduje nad promo, więc przycisk i kontakt trzymają się razem na dole */
.gc-drawer__promo+.gc-drawer__foot{margin-top:0;padding-top:22px}

/* ============================================================
   SUBSKRYPCJA — zapis online: etap „Dane i płatność", ekran potwierdzenia
   (pola, przyciski i stepper: klasy .gc-gift-* z kreatora prezentu — ten sam wygląd formularza)
   ============================================================ */
.gc-b__stepper{margin-bottom:0}
.gc-b[data-step="1"] .gc-b__controls,.gc-b[data-step="2"] .gc-b__controls{gap:22px}
.gc-b__controls>.gc-gift-nav{margin-top:0}
.gc-b__controls .gc-gift-step__h{margin-bottom:18px}
.gc-b__freq{margin-top:16px}
.gc-b__freq-lab{font-size:13px;font-weight:700;color:var(--ink);margin-bottom:9px}
.gc-b__sumtot{display:flex;flex-direction:column;gap:7px;margin-top:14px;font-size:13.5px}
.gc-b__sumtot-row{display:flex;justify-content:space-between;gap:12px}
.gc-b__sumtot-row>span{color:rgba(255,255,255,.7)}
.gc-b__sumtot-row>strong{font-weight:600;font-variant-numeric:tabular-nums}
.gc-b__secure{display:flex;align-items:flex-start;gap:8px;margin-top:12px;font-size:11.5px;color:rgba(255,255,255,.7);line-height:1.45}
.gc-b__secure .gc-b__i{color:var(--lime);flex:none;margin-top:1px}
.gc-b__savepill .gc-b__i{flex:none}

.gc-sub-gap{margin-top:26px}
.gc-sub-test{margin:0 0 16px;padding:10px 14px;border-radius:11px;background:#FBF1DD;border:1px solid #EBD3A2;color:#7A5410;font-size:12.5px;font-weight:600;line-height:1.45}
.gc-sub-login{margin:0 0 20px}
.gc-sub-login a{color:var(--indigo);font-weight:700;text-decoration:underline}
.gc-sub-login.is-hl{box-shadow:0 0 0 2px var(--indigo)}
.gc-sub-data .gc-gift-radio__lab{flex:1;min-width:0}
.gc-sub-radio__cost{flex:none;font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}
.gc-sub-radio__cost.is-free{color:var(--green-dark)}
.gc-gift-radio.is-on .gc-sub-radio__cost.is-free{color:var(--lime)}
.gc-sub-ship{margin-top:12px}
.gc-sub-ship .gc-gift-note{margin-top:0}
.gc-sub-pointsearch{margin-bottom:10px}
.gc-sub-points{display:flex;flex-direction:column;gap:6px;max-height:292px;overflow:auto}
.gc-sub-points__info{font-size:12.5px;color:var(--muted);padding:4px 2px}
.gc-sub-point{display:flex;align-items:flex-start;gap:10px;width:100%;padding:11px 13px;border-radius:11px;border:1.5px solid var(--border);background:#fff;color:var(--ink);text-align:left;cursor:pointer;font-family:var(--sans);transition:border-color .15s}
button.gc-sub-point:hover{border-color:var(--indigo)}
.gc-sub-point__ic{flex:none;color:var(--green-dark);margin-top:1px}
.gc-sub-point__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.gc-sub-point__main b{font-size:13.5px;font-weight:700}
.gc-sub-point__main i{font-style:normal;font-size:12px;color:var(--muted);line-height:1.4}
.gc-sub-point.is-picked{cursor:default;border-color:var(--green);background:#F3F9EF;align-items:center}
.gc-sub-point__change{flex:none;border:0;background:none;padding:4px 2px;font-family:var(--sans);font-size:12.5px;font-weight:700;color:var(--indigo);text-decoration:underline;cursor:pointer}
.gc-sub-mapbtn{width:100%}
.gc-sub-paybadge{flex:none;font-size:10.5px;font-weight:800;letter-spacing:.06em;padding:4px 8px;border-radius:6px;background:var(--bg-chip);color:var(--indigo)}
.gc-sub-paybadge--blik{background:#111;color:#fff}
.gc-gift-pay.is-on .gc-sub-paybadge{background:rgba(255,255,255,.16);color:#fff}
.gc-sub-blik{margin:12px 0 0}
.gc-sub-blik__input{max-width:210px;font-family:var(--mono);font-size:20px;font-weight:600;letter-spacing:.14em;text-align:center}
.gc-sub-blik .gc-gift-hint{margin:8px 0 0}
.gc-sub-paynote{margin-top:16px}
.gc-sub-paynote .gc-b__i{flex:none;color:var(--accent);margin-top:1px}
.gc-sub-consent{margin-top:12px}
.gc-sub-data .gc-gift-err{margin-top:16px}
.gc-gift-btn--green.is-disabled{color:#fff}

.gc-sub-done{padding:8px 0 0}
.gc-sub-done__box{margin-top:14px}
.gc-sub-done__row{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid var(--border);font-size:13.5px}
.gc-sub-done__row:last-child{border-bottom:0;padding-bottom:0}
.gc-sub-done__row>span{color:var(--muted);flex:none}
.gc-sub-done__row>strong{font-weight:600;color:var(--ink);text-align:right}
.gc-sub-done__steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.gc-sub-done__badge--bad{background:#F7E6E3;color:var(--sale)}
.gc-sub-spin{width:54px;height:54px;border-radius:50%;border:4px solid var(--border);border-top-color:var(--indigo);margin:8px auto 20px;animation:gc-sub-spin .9s linear infinite}
@keyframes gc-sub-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.gc-sub-spin{animation-duration:2.4s}}

.gc-sub-modal{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(15,13,56,.55)}
.gc-sub-modal.is-open{display:flex}
.gc-sub-modal__box{width:min(960px,100%);height:min(720px,100%);display:flex;flex-direction:column;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 30px 80px rgba(15,13,56,.35)}
.gc-sub-modal__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--border);font-size:15px;color:var(--ink)}
.gc-sub-modal__close{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;border:0;background:var(--bg-chip);color:var(--ink);cursor:pointer;font-size:20px;line-height:1}
.gc-sub-modal__frame{flex:1;width:100%;border:0}

@media (max-width:760px){
  .gc-sub-done__steps{grid-template-columns:1fr}
  .gc-sub-done__row{flex-direction:column;gap:2px}
  .gc-sub-done__row>strong{text-align:left}
  .gc-sub-modal{padding:0}
  .gc-sub-modal__box{border-radius:0;height:100%}
  .gc-b__controls>.gc-gift-nav{flex-direction:column-reverse}
  .gc-b__controls>.gc-gift-nav .gc-gift-btn{width:100%}
}

/* ============================================================
   KONTO → SUBSKRYPCJA: stan, najbliższa dostawa, panele zmian
   ============================================================ */
.gc-subcard{scroll-margin-top:150px;transition:box-shadow var(--transition),opacity var(--transition)}
.gc-subcard.is-cancelled{opacity:.82}
.gc-subcard.is-busy{opacity:.6;pointer-events:none}
.gc-subcard.is-hl{box-shadow:0 0 0 2px var(--indigo),var(--shadow-soft)}
.gc-subcard__hint{font-size:12px;color:var(--muted)}
.gc-subalert{display:flex;align-items:center;gap:12px;margin:0 0 18px;padding:13px 16px;border-radius:12px;background:var(--bg-chip);color:var(--ink);font-size:13px;line-height:1.5}
.gc-subalert>svg{flex:none;color:var(--brand)}
.gc-subalert>div{flex:1;min-width:0}
.gc-subalert strong{display:block;font-weight:700}
.gc-subalert span{color:var(--muted-cool)}
.gc-subalert .gc-btn{flex:none}
.gc-subalert--bad{background:#FBECE9;border:1px solid #F1CFC8}
.gc-subalert--bad>svg{color:var(--sale)}
.gc-subnext{display:grid;grid-template-columns:1.4fr 1fr;gap:22px;padding:18px 0;border-bottom:1px solid var(--border)}
.gc-subnext__col{display:flex;flex-direction:column;gap:10px;min-width:0}
.gc-subnext__coffees{display:flex;flex-direction:column;gap:10px}
.gc-subnext__coffee{display:flex;align-items:center;gap:11px}
.gc-subnext__coffee img{width:44px;height:44px;border-radius:10px;object-fit:cover;flex:none;background:var(--bg-chip)}
.gc-subnext__coffee b,.gc-subnext__deliv b{display:block;font-size:14px;font-weight:700;color:var(--ink)}
.gc-subnext__coffee i,.gc-subnext__deliv i{display:block;font-style:normal;font-size:12.5px;color:var(--muted);line-height:1.45}
.gc-subnext__warn{margin:0;font-size:13px;color:var(--sale);font-weight:600}
.gc-subcard__link{border:0;background:none;padding:6px 2px;font-family:var(--sans);font-size:13px;font-weight:600;color:var(--brand);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.gc-subcard__link:hover{color:var(--green-dark)}
.gc-subcard__link--quiet{color:var(--muted)}
.gc-subcard__actions [data-gcs-panel].is-current{box-shadow:0 0 0 2px var(--lime)}
.gc-subcard__foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;margin-top:16px;padding-top:14px;border-top:1px solid var(--border);font-size:12.5px;color:var(--muted)}
.gc-btn--danger{background:#fff;color:var(--sale);border-color:#E6B9B0}
.gc-btn--danger:hover{background:var(--sale);border-color:var(--sale);color:#fff}

.gc-subpanel{margin-top:16px;padding:20px;border-radius:14px;background:var(--bg-warm);border:1px solid var(--border)}
.gc-subpanel[hidden]{display:none}
.gc-subpanel__h{font-family:var(--serif);font-size:18px;font-weight:600;color:var(--ink);margin:0 0 6px}
.gc-subpanel__lead{font-size:13px;color:var(--muted-cool);line-height:1.55;margin:0 0 16px}
.gc-subpanel__grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.gc-subpanel__grid--addr{margin-top:14px}
.gc-subpanel__acts{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px}
.gc-subpanel__alt{font-size:12.5px;color:var(--muted);flex-basis:100%}
.gc-subpanel__alt .gc-subcard__link{font-size:12.5px;padding:0}
.gc-subpanel__err{margin-top:14px;padding:11px 14px;border-radius:11px;background:rgba(200,68,44,.1);border:1px solid rgba(200,68,44,.35);color:#a3271a;font-size:13px;font-weight:600}
.gc-subpanel--cancel{background:#fff}
.gc-subfield{display:flex;flex-direction:column;gap:7px;min-width:0}
.gc-subfield[hidden]{display:none}
.gc-subfield--wide{grid-column:1/-1}
.gc-subfield>span{font-size:13px;font-weight:700;color:var(--ink)}
.gc-subfield input,.gc-subfield select{width:100%;height:46px;border-radius:11px;border:1.5px solid var(--border);padding:0 14px;font-size:14px;color:var(--ink);font-family:var(--sans);background:#fff;box-sizing:border-box}
.gc-subfield input:focus,.gc-subfield select:focus{outline:none;border-color:var(--indigo)}
.gc-subpick{display:flex;flex-direction:column;gap:8px;max-height:420px;overflow:auto}
.gc-subpick__item{display:flex;align-items:center;gap:12px;padding:10px 13px;border-radius:12px;border:1.5px solid var(--border);background:#fff;cursor:pointer;transition:border-color .15s,opacity .15s}
.gc-subpick__item:hover{border-color:var(--indigo)}
.gc-subpick__item.is-on{border-color:var(--indigo);box-shadow:0 0 0 1px var(--indigo) inset}
.gc-subpick__item.is-off{opacity:.5;cursor:not-allowed}
.gc-subpick__item input{width:18px;height:18px;accent-color:var(--green);flex:none}
.gc-subpick__item img{width:44px;height:44px;border-radius:10px;object-fit:cover;flex:none;background:var(--bg-chip)}
.gc-subpick__main{flex:1;min-width:0}
.gc-subpick__main b{display:block;font-size:14px;font-weight:700;color:var(--ink)}
.gc-subpick__main i{display:block;font-style:normal;font-size:12px;color:var(--muted)}
.gc-subpick__pack{flex:none;height:38px;border-radius:9px;border:1.5px solid var(--border);padding:0 10px;font-size:13px;font-family:var(--sans);background:#fff;color:var(--ink)}
.gc-subdeliv{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.gc-subdeliv__opt{display:flex;align-items:center;gap:9px;padding:11px 15px;border-radius:12px;border:1.5px solid var(--border);background:#fff;font-size:13.5px;font-weight:600;color:var(--ink);cursor:pointer}
.gc-subdeliv__opt:has(input:checked){border-color:var(--indigo);box-shadow:0 0 0 1px var(--indigo) inset}
.gc-subdeliv__opt input{accent-color:var(--indigo);width:17px;height:17px}
.gc-subpoint__picked{display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:11px;border:1.5px solid var(--green);background:#F3F9EF;font-size:13.5px;font-weight:600;color:var(--ink)}
.gc-subpoint__picked[hidden],.gc-subpoint__inpost[hidden]{display:none}
.gc-subpoint__picked svg{flex:none;color:var(--green-dark)}
.gc-subpoint__picked span{flex:1;min-width:0}
.gc-subpoint__list{display:flex;flex-direction:column;gap:6px;margin-top:10px;max-height:260px;overflow:auto}
.gc-subpoint__pickup{margin:0;font-size:13px;color:var(--muted-cool)}
.gc-subreasons{display:flex;flex-direction:column;gap:9px;margin-bottom:4px}
.gc-subreasons label{display:flex;align-items:center;gap:9px;font-size:13.5px;color:var(--ink);cursor:pointer}
.gc-subreasons input{accent-color:var(--indigo);width:16px;height:16px}

@media (max-width:760px){
  .gc-subnext,.gc-subpanel__grid{grid-template-columns:1fr}
  .gc-subalert{flex-wrap:wrap}
  .gc-subalert .gc-btn{width:100%}
  .gc-subpick__item{flex-wrap:wrap}
  .gc-subpick__pack{width:100%}
  .gc-subpanel{padding:16px}
}

/* Konto → subskrypcja: reguły ogólne formularzy konta (.gc-account__content form label / select / submit)
   są mocniejsze od klas paneli, więc tu je wyrównujemy. Atrybut hidden ma zawsze pierwszeństwo. */
.gc-subacc [hidden]{display:none!important}
.gc-account__content form label.gc-subpick__item{display:flex;margin-bottom:0;font-weight:400}
.gc-account__content form label.gc-subfield{display:flex;margin-bottom:0}
.gc-account__content form label.gc-subdeliv__opt{display:flex;margin-bottom:0;font-size:13.5px}
.gc-account__content form .gc-subreasons label{display:flex;margin-bottom:0;font-weight:500;font-size:13.5px}
.gc-account__content form select.gc-subpick__pack{width:auto;min-height:38px;padding:0 10px}
.gc-account__content form.gc-subpanel button.gc-btn--danger[type="submit"]{background:#fff;color:var(--sale);border:1.5px solid #E6B9B0;box-shadow:none}
.gc-account__content form.gc-subpanel button.gc-btn--danger[type="submit"]:hover{background:var(--sale);border-color:var(--sale);color:#fff}
.gc-account__content form.gc-subpanel button.gc-btn--sm[type="submit"]{padding:8px 14px;font-size:13px}

/* Podsumowanie kreatora przykleja się pod nagłówkiem sklepu (131 px), nie pod nim. */
@media (min-width:981px){.gc-b__summary{top:148px}}

/* Paczkomat: pole wyszukiwania i „Wybierz na mapie" w jednym wierszu (jak w zwykłym zamówieniu) */
.gc-sub-pointrow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin-bottom:10px}
.gc-sub-pointrow .gc-sub-pointsearch{margin-bottom:0}
.gc-sub-pointrow .gc-sub-mapbtn{width:auto;height:46px;padding:0 18px;white-space:nowrap}
.gc-sub-pointrow .gc-subpoint__map{height:46px;padding:0 16px;white-space:nowrap;gap:7px}
.gc-subpoint__inpost .gc-sub-pointrow{margin-bottom:0}
@media (max-width:560px){
  .gc-sub-pointrow{grid-template-columns:1fr}
  .gc-sub-pointrow .gc-sub-mapbtn,.gc-sub-pointrow .gc-subpoint__map{width:100%;justify-content:center}
}

/* Zgody: „Zaakceptuj wszystkie" nad listą wymaganych zgód */
.gc-sub-consent-all{align-items:center;margin-top:20px;padding:12px 14px;border:1.5px solid var(--border);border-radius:11px;background:#fff;font-size:13.5px;font-weight:700;color:var(--ink)}
.gc-sub-consent-all:hover{border-color:var(--indigo)}
.gc-sub-consent-all input{margin-top:0}
.gc-sub-consents{padding:0 15px}
.gc-sub-consents .gc-gift-consent{margin-top:12px}
