/*
Theme Name: Kawowy24
Theme URI: https://kawowy24.pl/
Author: ecommerce-manager.pl
Description: Autorski motyw sklepu kawowy24.pl. Edytorski, wysoki kontrast: krem, czern, brazowy akcent, zero zaokraglen, typografia Montserrat + Archivo.
Version: 1.0.0
Requires at least: 6.5
Tested up to: 7.1
Requires PHP: 8.0
Text Domain: kawowy24
WC requires at least: 8.0
WC tested up to: 11.1
*/

/* ============================= TOKENY ============================= */
:root{
  --kw-cream:#FBFAF3;
  --kw-cream-2:#F0EFE5;
  --kw-sand:#DBD5CA;
  --kw-black:#000000;
  --kw-white:#FFFFFF;
  --kw-bronze:#89704A;
  --kw-bronze-dark:#6E5A3B;
  --kw-muted:rgba(0,0,0,.56);
  --kw-muted-light:rgba(255,255,255,.62);
  --kw-line:rgba(0,0,0,.16);
  --kw-line-light:rgba(255,255,255,.22);
  --kw-container:1440px;
  --kw-gutter:40px;
  --kw-font:"Montserrat",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  --kw-display:"Archivo","Montserrat",Impact,sans-serif;
  --kw-micro:11px;
  --kw-track:.18em;
  --kw-head-h:74px;
}

/* ============================= RESET ============================= */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body.kawowy24{margin:0;background:var(--kw-cream);color:var(--kw-black);font-family:var(--kw-font);font-size:15px;line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}
.kawowy24 img{max-width:100%;height:auto;display:block}
.kawowy24 a{color:inherit;text-decoration:none}
.kawowy24 button{font-family:inherit}
.kawowy24 h1,.kawowy24 h2,.kawowy24 h3,.kawowy24 h4{margin:0;font-weight:600;line-height:1.06}
.kawowy24 p{margin:0 0 1em}
.kw-container{max-width:var(--kw-container);margin:0 auto;padding:0 var(--kw-gutter)}
.kw-display{font-family:var(--kw-display);font-weight:600;font-stretch:125%;letter-spacing:-.01em;text-transform:uppercase}
.kw-micro{font-size:var(--kw-micro);letter-spacing:var(--kw-track);text-transform:uppercase;font-weight:600}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.kw-skip{position:absolute;left:-9999px}
.kw-skip:focus{left:12px;top:12px;z-index:999;background:#000;color:#fff;padding:10px 16px}

/* ============================= PRZYCISKI ============================= */
.kw-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--kw-black);background:var(--kw-black);color:var(--kw-white);
  padding:16px 30px;font-size:12px;font-weight:600;letter-spacing:var(--kw-track);text-transform:uppercase;border-radius:0;cursor:pointer;transition:background .18s,color .18s,border-color .18s}
.kw-btn:hover{background:var(--kw-bronze);border-color:var(--kw-bronze);color:var(--kw-white)}
.kw-btn--ghost{background:transparent;color:var(--kw-black)}
.kw-btn--ghost:hover{background:var(--kw-black);color:var(--kw-white);border-color:var(--kw-black)}
.kw-btn--light{background:transparent;color:var(--kw-white);border-color:var(--kw-white)}
.kw-btn--light:hover{background:var(--kw-white);color:var(--kw-black)}
.kw-btn--block{width:100%}

/* ============================= BELKA ============================= */
.kw-announce{background:var(--kw-black);color:var(--kw-white);overflow:hidden;position:relative;z-index:60}
.kw-announce__track{display:flex;gap:56px;width:max-content;padding:11px 0;animation:kw-marquee 42s linear infinite}
.kw-announce__item{font-size:var(--kw-micro);letter-spacing:var(--kw-track);text-transform:uppercase;font-weight:600;white-space:nowrap;display:flex;align-items:center;gap:56px}
.kw-announce__item::after{content:"";width:4px;height:4px;background:var(--kw-bronze)}
@keyframes kw-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.kw-announce__track{animation:none}}

/* ============================= NAGLOWEK ============================= */
.kw-header{position:sticky;top:0;z-index:50;background:var(--kw-cream);border-bottom:1px solid var(--kw-line);transition:background .25s,color .25s,border-color .25s}
.kw-header__bar{display:flex;align-items:center;gap:28px;max-width:var(--kw-container);margin:0 auto;padding:0 var(--kw-gutter);min-height:var(--kw-head-h)}
.kw-logo{flex:none;font-family:var(--kw-display);font-weight:600;font-stretch:125%;font-size:21px;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;display:flex;align-items:center;gap:9px}
.kw-logo__mark{width:11px;height:11px;background:var(--kw-bronze);display:block;flex:none}
.kw-nav{display:flex;align-items:center;gap:clamp(12px,1.5vw,26px);margin-left:14px;flex:1 1 auto;min-width:0;overflow:hidden}
.kw-nav__item{position:relative}
.kw-nav__row{display:flex;align-items:center;gap:6px}
.kw-nav__link{display:block;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:26px 0;white-space:nowrap;position:relative}
.kw-nav__link::after{content:"";position:absolute;left:0;right:0;bottom:18px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .2s}
.kw-nav__item:hover .kw-nav__link::after{transform:scaleX(1)}
.kw-nav__toggle{display:none;width:38px;height:38px;border:1px solid var(--kw-line);background:transparent;color:inherit;font-size:17px;line-height:1;cursor:pointer;border-radius:0;flex:none}
.kw-actions{display:flex;align-items:center;gap:4px;margin-left:auto;flex:none}
.kw-iconbtn{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border:0;background:transparent;color:inherit;cursor:pointer;position:relative;padding:0}
.kw-iconbtn svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.5}
.kw-cart__count[hidden]{display:none}
.kw-cart__count{position:absolute;top:4px;right:2px;min-width:17px;height:17px;padding:0 4px;background:var(--kw-bronze);color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center}
.kw-burger{display:none}

/* mega panel */
.kw-mega{position:absolute;top:100%;left:-24px;min-width:560px;background:var(--kw-cream-2);border:1px solid var(--kw-line);padding:26px 28px;display:none;box-shadow:0 24px 40px rgba(0,0,0,.08);color:var(--kw-black)}
.kw-nav__item:hover .kw-mega{display:block}
.kw-mega__grid{display:grid;grid-template-columns:repeat(2,max-content);gap:8px 44px}
.kw-mega__link{font-size:13px;color:var(--kw-muted);white-space:nowrap;padding:3px 0}
.kw-mega__link:hover{color:var(--kw-black)}
.kw-mega__all{display:inline-block;margin-top:18px;font-size:var(--kw-micro);letter-spacing:var(--kw-track);text-transform:uppercase;font-weight:600;border-bottom:1px solid var(--kw-black);padding-bottom:3px}

/* naglowek na hero */
.kw-header--overlay{position:fixed;left:0;right:0;top:var(--kw-ann-h,0px);background:transparent;border-bottom-color:transparent;color:var(--kw-white);transition:background .25s,color .25s,border-color .25s,top .25s}
.kw-header--overlay.is-stuck{top:0}
.kw-header--overlay .kw-logo__mark{background:var(--kw-white)}
.kw-header--overlay.is-stuck{background:var(--kw-cream);color:var(--kw-black);border-bottom-color:var(--kw-line)}
.kw-header--overlay.is-stuck .kw-logo__mark{background:var(--kw-bronze)}

/* szukajka */
.kw-search{display:none;border-top:1px solid var(--kw-line);background:var(--kw-cream);color:var(--kw-black)}
.kw-search.is-open{display:block}
.kw-search__form{display:flex;max-width:var(--kw-container);margin:0 auto;padding:18px var(--kw-gutter)}
.kw-search__input{flex:1;border:1px solid var(--kw-black);background:transparent;padding:14px 16px;font-family:inherit;font-size:14px;border-radius:0;min-width:0}
.kw-search__input:focus{outline:2px solid var(--kw-bronze);outline-offset:-2px}

/* ============================= HERO ============================= */
.kw-hero{position:relative;min-height:86vh;display:flex;align-items:flex-end;background:#0b0b0b;color:var(--kw-white);overflow:hidden}
.kw-hero__media{position:absolute;inset:0}
.kw-hero__media img{width:100%;height:100%;object-fit:cover;opacity:.6}
.kw-hero__scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.6) 0%,rgba(0,0,0,.2) 45%,rgba(0,0,0,.85) 100%)}
.kw-hero__inner{position:relative;width:100%;max-width:var(--kw-container);margin:0 auto;padding:0 var(--kw-gutter) 76px}
.kw-hero__eyebrow{font-size:var(--kw-micro);letter-spacing:var(--kw-track);text-transform:uppercase;font-weight:600;color:var(--kw-sand);margin-bottom:22px}
.kw-hero__title{font-family:var(--kw-display);font-weight:600;font-stretch:125%;text-transform:uppercase;font-size:clamp(40px,7.4vw,104px);line-height:.92;letter-spacing:-.015em;max-width:15ch}
.kw-hero__lead{margin:26px 0 34px;max-width:52ch;font-size:16px;line-height:1.65;color:rgba(255,255,255,.86)}
.kw-hero__cta{display:flex;flex-wrap:wrap;gap:14px}

/* ============================= SEKCJE ============================= */
.kw-section{padding:96px 0}
.kw-section--tight{padding:56px 0}
.kw-section--white{background:var(--kw-white)}
.kw-section--sand{background:var(--kw-cream-2)}
.kw-section--black{background:var(--kw-black);color:var(--kw-white)}
.kw-section__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:42px}
.kw-section__eyebrow{font-size:var(--kw-micro);letter-spacing:var(--kw-track);text-transform:uppercase;font-weight:600;color:var(--kw-bronze);margin-bottom:14px;display:block}
.kw-section--black .kw-section__eyebrow{color:var(--kw-sand)}
.kw-section__title{font-family:var(--kw-display);font-weight:600;font-stretch:125%;text-transform:uppercase;font-size:clamp(28px,3.6vw,50px);line-height:1;letter-spacing:-.01em}
.kw-section__link{font-size:var(--kw-micro);letter-spacing:var(--kw-track);text-transform:uppercase;font-weight:600;border-bottom:1px solid currentColor;padding-bottom:4px;white-space:nowrap}

/* pasek liczb */
.kw-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--kw-line);border-bottom:1px solid var(--kw-line)}
.kw-stats__cell{padding:30px 26px;border-right:1px solid var(--kw-line)}
.kw-stats__cell:last-child{border-right:0}
.kw-stats__num{font-family:var(--kw-display);font-stretch:125%;font-size:34px;font-weight:600;line-height:1;margin-bottom:8px}
.kw-stats__label{font-size:12px;color:var(--kw-muted);letter-spacing:.04em}

/* kafle kategorii */
.kw-cats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px}
.kw-cat{position:relative;background:var(--kw-cream-2);padding:32px 30px 28px;min-height:330px;display:flex;flex-direction:column;transition:background .2s}
.kw-cat:hover{background:var(--kw-sand)}
.kw-cat .kw-cat__photo{width:100%;height:190px;object-fit:contain;margin:6px 0 22px;mix-blend-mode:multiply}
.kw-cat__name{font-family:var(--kw-display);font-stretch:125%;text-transform:uppercase;font-size:22px;font-weight:600;margin-top:auto}
.kw-cat__count{font-size:12px;color:var(--kw-muted);margin-top:7px;letter-spacing:.04em}
.kw-cat__arrow{position:absolute;top:26px;right:26px;font-size:18px;opacity:0;transform:translateX(-6px);transition:.2s}
.kw-cat:hover .kw-cat__arrow{opacity:1;transform:none}

/* chipsy */
.kw-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:38px}
.kw-chip{border:1px solid var(--kw-line);background:transparent;padding:11px 20px;font-size:11px;font-weight:600;letter-spacing:var(--kw-track);text-transform:uppercase;cursor:pointer;transition:.16s;color:inherit}
.kw-chip:hover{border-color:var(--kw-black)}
.kw-chip.is-active{background:var(--kw-black);color:var(--kw-white);border-color:var(--kw-black)}

/* siatka produktow (strona glowna) */
.kw-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;transition:opacity .18s}
.kw-grid.is-loading{opacity:.35}
.kw-card{background:var(--kw-white);display:flex;flex-direction:column;padding:0 0 18px;position:relative}
.kw-card__media{display:block;background:var(--kw-white);aspect-ratio:1/1;overflow:hidden;position:relative;max-width:100%}
.kw-card__media img{width:100%;height:100%;object-fit:contain;padding:22px;transition:transform .4s}
.kw-card:hover .kw-card__media img{transform:scale(1.045)}
.kw-card__brand{font-size:10px;letter-spacing:var(--kw-track);text-transform:uppercase;font-weight:600;color:var(--kw-bronze);padding:0 18px;margin-bottom:6px}
.kw-card__title{font-size:13.5px;font-weight:500;line-height:1.45;padding:0 18px;margin-bottom:10px;min-height:2.9em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.kw-card__price{font-size:14px;font-weight:600;padding:0 18px;margin-bottom:14px}
.kw-card__price del{color:var(--kw-muted);font-weight:400;margin-right:7px}
.kw-card__price ins{text-decoration:none;color:var(--kw-bronze)}
.kw-card__cta{margin:0 18px}
.kw-card__flag{position:absolute;top:14px;left:14px;background:var(--kw-black);color:#fff;font-size:10px;letter-spacing:var(--kw-track);text-transform:uppercase;font-weight:600;padding:6px 10px;z-index:2}
.kw-card__flag--out{background:var(--kw-sand);color:var(--kw-black)}

/* panel edytorski */
.kw-editorial{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center}
.kw-editorial__title{font-family:var(--kw-display);font-stretch:125%;text-transform:uppercase;font-size:clamp(26px,3.2vw,44px);line-height:1.02;margin-bottom:24px}
.kw-editorial__text{color:rgba(255,255,255,.74);font-size:15.5px;line-height:1.75;max-width:56ch}
.kw-editorial__list{list-style:none;margin:30px 0 0;padding:0;display:grid;gap:1px;background:var(--kw-line-light);border-top:1px solid var(--kw-line-light);border-bottom:1px solid var(--kw-line-light)}
.kw-editorial__list li{background:var(--kw-black);padding:18px 2px;display:flex;gap:18px;align-items:baseline}
.kw-editorial__list b{font-family:var(--kw-display);font-stretch:125%;font-size:13px;letter-spacing:var(--kw-track);color:var(--kw-sand);min-width:34px}
.kw-editorial__media{aspect-ratio:4/5;background:#111;overflow:hidden}
.kw-editorial__media img{width:100%;height:100%;object-fit:cover}

/* newsletter */
.kw-news{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.kw-news__form{display:flex}
.kw-news__input{flex:1;border:1px solid var(--kw-black);border-right:0;background:transparent;padding:17px 18px;font-family:inherit;font-size:14px;border-radius:0;min-width:0}
.kw-news__input:focus{outline:2px solid var(--kw-bronze);outline-offset:-2px}
.kw-news__note{font-size:12px;color:var(--kw-muted);margin-top:14px}

/* ============================= STOPKA ============================= */
.kw-footer{background:var(--kw-black);color:var(--kw-white);padding:80px 0 0}
.kw-footer__grid{display:grid;grid-template-columns:1.6fr repeat(4,minmax(0,1fr));gap:44px}
.kw-footer__brand .kw-logo{font-size:24px;margin-bottom:18px}
.kw-footer__about{color:var(--kw-muted-light);font-size:13.5px;line-height:1.7;max-width:34ch}
.kw-footer__title{font-size:var(--kw-micro);letter-spacing:var(--kw-track);text-transform:uppercase;font-weight:600;margin-bottom:20px}
.kw-footer__list{list-style:none;margin:0;padding:0;display:grid;gap:11px}
.kw-footer__list a{font-size:13.5px;color:var(--kw-muted-light)}
.kw-footer__list a:hover{color:var(--kw-white)}
.kw-footer__bottom{margin-top:64px;border-top:1px solid var(--kw-line-light);padding:26px 0 34px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--kw-muted-light)}
.kw-footer__bottom a:hover{color:var(--kw-white)}
.kw-top{position:fixed;right:22px;bottom:22px;width:46px;height:46px;border:1px solid var(--kw-line);background:var(--kw-cream);display:none;align-items:center;justify-content:center;cursor:pointer;z-index:40}
.kw-top.is-on{display:flex}

/* ============================= STRONY / TRESC ============================= */
.kw-page{padding:64px 0 96px}
.kw-page__head{margin-bottom:44px;border-bottom:1px solid var(--kw-line);padding-bottom:26px}
.kw-page__title{font-family:var(--kw-display);font-stretch:125%;text-transform:uppercase;font-size:clamp(30px,4vw,56px);line-height:1}
.kw-page__content{max-width:820px;font-size:15.5px;line-height:1.8}
.kw-page__content h2{font-family:var(--kw-display);font-stretch:125%;text-transform:uppercase;font-size:26px;margin:38px 0 14px}
.kw-page__content h3{font-size:18px;margin:28px 0 10px}
.kw-page__content a{color:var(--kw-bronze);text-decoration:underline;text-underline-offset:3px}
.kw-page__content ul,.kw-page__content ol{padding-left:20px}
.kw-page--wc .kw-page__content{max-width:none}
.kw-page--wc .kw-page__content a{color:inherit;text-decoration:none}

/* ============================= WOOCOMMERCE ============================= */
.kw-woo{padding:44px 0 96px}
.kw-woo .woocommerce-breadcrumb{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--kw-muted);margin-bottom:28px}
.kw-woo .woocommerce-products-header__title,.kw-woo h1.page-title,.kw-woo h1.entry-title{font-family:var(--kw-display);font-stretch:125%;text-transform:uppercase;font-size:clamp(30px,4vw,56px);line-height:1;margin-bottom:10px}
.kw-woo .term-description{color:var(--kw-muted);max-width:70ch;margin-bottom:20px}
.kw-woo .woocommerce-result-count{font-size:12px;color:var(--kw-muted);letter-spacing:.04em;margin:0}
.kw-woo .woocommerce-ordering select{border:1px solid var(--kw-black);background:transparent;padding:11px 14px;font-family:inherit;font-size:12px;letter-spacing:.06em;text-transform:uppercase;border-radius:0;appearance:none;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23000' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center;padding-right:38px}
.kw-woo .woocommerce-notices-wrapper:empty{display:none}

/* pasek nad siatka */
.kw-woo .kw-woo-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid var(--kw-line);border-bottom:1px solid var(--kw-line);padding:14px 0;margin-bottom:2px}

/* siatka Woo */
.kw-woo ul.products{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px}
.kw-woo ul.products::before,.kw-woo ul.products::after{display:none}
.kw-woo ul.products li.product{width:auto!important;float:none!important;margin:0!important;clear:none!important;background:var(--kw-white);padding:0 0 18px;position:relative;text-align:left}
.kw-woo ul.products li.product a img{width:100%;aspect-ratio:1/1;object-fit:contain;padding:22px;margin:0;background:var(--kw-white);transition:transform .4s}
.kw-woo ul.products li.product:hover a img{transform:scale(1.045)}
.kw-woo ul.products li.product .woocommerce-loop-product__title{font-size:13.5px!important;font-weight:500;line-height:1.45;padding:0 18px;margin:0 0 10px;min-height:2.9em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.kw-woo ul.products li.product .price{font-size:14px;font-weight:600;color:var(--kw-black);padding:0 18px;margin:0 0 14px;display:block}
.kw-woo ul.products li.product .price del{color:var(--kw-muted);font-weight:400;margin-right:7px}
.kw-woo ul.products li.product .price ins{text-decoration:none;color:var(--kw-bronze)}
.kw-woo ul.products li.product .button,.kw-woo ul.products li.product .added_to_cart{display:flex;align-items:center;justify-content:center;margin:0 18px;padding:14px 18px;background:var(--kw-black);color:var(--kw-white);
  font-size:11px;font-weight:600;letter-spacing:var(--kw-track);text-transform:uppercase;border-radius:0;border:1px solid var(--kw-black);transition:background .18s,border-color .18s}
.kw-woo ul.products li.product .button:hover,.kw-woo ul.products li.product .added_to_cart:hover{background:var(--kw-bronze);border-color:var(--kw-bronze);color:var(--kw-white)}
.kw-woo ul.products li.product .added_to_cart{margin-top:8px;background:transparent;color:var(--kw-black)}
.kw-woo ul.products li.product .onsale{position:absolute;top:14px;left:14px;background:var(--kw-black);color:#fff;font-size:10px;letter-spacing:var(--kw-track);text-transform:uppercase;font-weight:600;padding:6px 10px;border-radius:0;margin:0;min-width:0;line-height:1.4;z-index:2}
.kw-woo ul.products li.product .woocommerce-loop-product__link{display:block}

/* paginacja */
.kw-woo .woocommerce-pagination{margin-top:46px}
.kw-woo .woocommerce-pagination ul{border:none!important;display:flex;gap:6px;justify-content:center;padding:0;margin:0;list-style:none}
.kw-woo .woocommerce-pagination ul li{border-right:none!important;border:none!important;margin:0}
.kw-woo .woocommerce-pagination ul li a,.kw-woo .woocommerce-pagination ul li span{display:flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 12px;border:1px solid var(--kw-line);font-size:13px;background:transparent}
.kw-woo .woocommerce-pagination ul li span.current{background:var(--kw-black);color:var(--kw-white);border-color:var(--kw-black)}
.kw-woo .woocommerce-pagination ul li a:hover{border-color:var(--kw-black)}

/* karta produktu */
.kw-woo div.product{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:56px;align-items:start}
.kw-woo div.product .woocommerce-product-gallery{float:none!important;width:auto!important;margin:0!important;background:var(--kw-white);padding:24px}
.kw-woo div.product .woocommerce-product-gallery__image img{object-fit:contain;aspect-ratio:1/1}
.kw-woo div.product div.summary{float:none!important;width:auto!important;margin:0!important}
.kw-woo div.product .product_title{font-family:var(--kw-display);font-stretch:125%;text-transform:uppercase;font-size:clamp(24px,2.6vw,38px);line-height:1.04;margin-bottom:18px}
.kw-woo div.product .woocommerce-product-rating{margin-bottom:14px}
.kw-woo div.product p.price,.kw-woo div.product span.price{font-size:26px;font-weight:600;color:var(--kw-black);margin-bottom:22px;display:block}
.kw-woo div.product p.price del{font-size:19px;color:var(--kw-muted);font-weight:400;margin-right:10px}
.kw-woo div.product p.price ins{text-decoration:none;color:var(--kw-bronze)}
.kw-woo div.product .woocommerce-product-details__short-description{color:var(--kw-muted);font-size:14.5px;line-height:1.75;margin-bottom:26px;border-top:1px solid var(--kw-line);padding-top:22px}
.kw-woo div.product form.cart{display:flex;gap:10px;flex-wrap:wrap;align-items:stretch;margin-bottom:26px}
.kw-woo div.product form.cart .quantity input.qty{width:88px;height:52px;border:1px solid var(--kw-black);background:transparent;text-align:center;font-family:inherit;font-size:15px;border-radius:0}
.kw-woo div.product form.cart button.single_add_to_cart_button{flex:1;min-width:220px;background:var(--kw-black);color:var(--kw-white);border:1px solid var(--kw-black);border-radius:0;
  padding:16px 30px;font-size:12px;font-weight:600;letter-spacing:var(--kw-track);text-transform:uppercase;cursor:pointer;transition:background .18s,border-color .18s}
.kw-woo div.product form.cart button.single_add_to_cart_button:hover{background:var(--kw-bronze);border-color:var(--kw-bronze)}
.kw-woo div.product .product_meta{font-size:12px;color:var(--kw-muted);border-top:1px solid var(--kw-line);padding-top:18px;letter-spacing:.02em}
.kw-woo div.product .product_meta a{color:var(--kw-black)}
.kw-woo div.product .stock{font-size:12px;letter-spacing:var(--kw-track);text-transform:uppercase;font-weight:600}
.kw-woo div.product .stock.in-stock{color:var(--kw-bronze)}
.kw-woo div.product .stock.out-of-stock{color:var(--kw-muted)}
.kw-woo div.product .woocommerce-tabs{grid-column:1/-1;margin-top:70px;border-top:1px solid var(--kw-line);padding-top:34px}
.kw-woo div.product .woocommerce-tabs ul.tabs{list-style:none;margin:0 0 26px;padding:0;display:flex;gap:8px;flex-wrap:wrap}
.kw-woo div.product .woocommerce-tabs ul.tabs::before{display:none}
.kw-woo div.product .woocommerce-tabs ul.tabs li{background:transparent;border:1px solid var(--kw-line);border-radius:0;margin:0;padding:0}
.kw-woo div.product .woocommerce-tabs ul.tabs li::before,.kw-woo div.product .woocommerce-tabs ul.tabs li::after{display:none}
.kw-woo div.product .woocommerce-tabs ul.tabs li a{display:block;padding:12px 20px;font-size:11px;font-weight:600;letter-spacing:var(--kw-track);text-transform:uppercase}
.kw-woo div.product .woocommerce-tabs ul.tabs li.active{background:var(--kw-black);border-color:var(--kw-black)}
.kw-woo div.product .woocommerce-tabs ul.tabs li.active a{color:var(--kw-white)}
.kw-woo div.product .woocommerce-tabs .panel{font-size:15px;line-height:1.8;max-width:80ch}
.kw-woo div.product .woocommerce-tabs .panel h2{display:none}
.kw-woo div.product .shop_attributes th{text-align:left;font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.kw-woo div.product .related{grid-column:1/-1;margin-top:76px}
.kw-woo div.product .related>h2,.kw-woo div.product .up-sells>h2{font-family:var(--kw-display);font-stretch:125%;text-transform:uppercase;font-size:26px;margin-bottom:26px}

/* komunikaty */
.kw-woo .woocommerce-message,.kw-woo .woocommerce-info,.kw-woo .woocommerce-error,
body.kawowy24 .woocommerce-message,body.kawowy24 .woocommerce-info,body.kawowy24 .woocommerce-error{
  background:var(--kw-cream-2);border-top:2px solid var(--kw-black);color:var(--kw-black);padding:16px 20px;margin:0 0 26px;list-style:none;font-size:14px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
body.kawowy24 .woocommerce-error{border-top-color:#B3261E}
body.kawowy24 .woocommerce-message a.button,body.kawowy24 .woocommerce-info a.button{background:var(--kw-black);color:#fff;border-radius:0;padding:11px 18px;font-size:11px;letter-spacing:var(--kw-track);text-transform:uppercase;font-weight:600;margin-left:auto}

/* koszyk / zamowienie / konto - bloki Woo */
.kw-page--wc .wp-block-woocommerce-cart,.kw-page--wc .wp-block-woocommerce-checkout{font-size:15px}
.kw-page--wc .wc-block-components-button,.kw-page--wc .wc-block-cart__submit-button{border-radius:0!important;background:var(--kw-black)!important;color:#fff!important;font-size:12px!important;letter-spacing:var(--kw-track);text-transform:uppercase;font-weight:600!important}
.kw-page--wc .wc-block-components-text-input input,.kw-page--wc .wc-block-components-textarea{border-radius:0!important}
.kw-page--wc .wc-block-components-totals-item__value,.kw-page--wc .wc-block-components-order-summary-item__total-price{font-weight:600}

/* wyniki wyszukiwania / wpisy */
.kw-posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px}
.kw-post{background:var(--kw-white);padding:30px}
.kw-post__date{font-size:11px;letter-spacing:var(--kw-track);text-transform:uppercase;color:var(--kw-bronze);margin-bottom:12px}
.kw-post__title{font-size:19px;line-height:1.3;margin-bottom:10px}
.kw-post__excerpt{font-size:14px;color:var(--kw-muted);line-height:1.7}

/* ============================= RESPONSYWNOSC ============================= */
@media (max-width:1500px){
  .kw-nav__link{font-size:11px;letter-spacing:.08em}
}
@media (max-width:1200px){
  :root{--kw-gutter:28px}
  .kw-grid,.kw-woo ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}
  .kw-footer__grid{grid-template-columns:1.4fr repeat(3,minmax(0,1fr))}
  .kw-footer__brand{grid-column:1/-1}
}
@media (max-width:1024px){
  .kw-nav{display:none}
  .kw-burger{display:flex}
  .kw-header__bar{flex-wrap:wrap;gap:12px}
  .kw-nav.is-open{display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;width:100%;margin:0 0 14px;gap:0;max-height:70vh;overflow-y:auto;border-top:1px solid var(--kw-line)}
  .kw-nav.is-open .kw-nav__item{width:100%;border-bottom:1px solid var(--kw-line)}
  .kw-nav.is-open .kw-nav__row{justify-content:space-between;width:100%}
  .kw-nav.is-open .kw-nav__link{padding:16px 0;flex:1}
  .kw-nav.is-open .kw-nav__link::after{display:none}
  .kw-nav.is-open .kw-nav__toggle{display:flex;align-items:center;justify-content:center}
  .kw-mega{position:static;min-width:0;border:0;box-shadow:none;background:transparent;padding:0 0 16px;display:none}
  .kw-nav.is-open .kw-nav__item.is-open .kw-mega{display:block}
  .kw-nav__item:hover .kw-mega{display:none}
  .kw-nav.is-open .kw-nav__item.is-open .kw-mega{display:block}
  .kw-mega__grid{grid-template-columns:1fr}
  .kw-editorial,.kw-news{grid-template-columns:1fr;gap:34px}
  .kw-editorial__media{display:none}
  .kw-woo div.product{grid-template-columns:1fr;gap:30px}
  .kw-section{padding:70px 0}
}
@media (max-width:820px){
  .kw-cats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kw-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kw-stats__cell:nth-child(2n){border-right:0}
  .kw-stats__cell{border-bottom:1px solid var(--kw-line)}
  .kw-posts{grid-template-columns:1fr}
  .kw-hero{min-height:76vh}
}
@media (max-width:768px){
  :root{--kw-gutter:18px;--kw-head-h:62px}
  .kw-grid,.kw-woo ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kw-logo{font-size:17px}
  .kw-iconbtn{width:38px;height:38px}
  .kw-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
  .kw-section{padding:56px 0}
  .kw-section__head{flex-direction:column;align-items:flex-start;gap:14px}
  .kw-hero__inner{padding-bottom:54px}
  .kw-woo div.product .woocommerce-product-gallery{padding:12px}
  .kw-card__title,.kw-woo ul.products li.product .woocommerce-loop-product__title{font-size:12.5px!important}
}
@media (max-width:520px){
  .kw-logo{font-size:14px;gap:7px}
  .kw-logo__mark{width:9px;height:9px}
  .kw-iconbtn{width:34px;height:34px}
  .kw-header__bar{gap:8px}
  .kw-cats{grid-template-columns:1fr}
  .kw-grid,.kw-woo ul.products{grid-template-columns:1fr}
  .kw-stats{grid-template-columns:1fr}
  .kw-stats__cell{border-right:0}
  .kw-news__form{flex-direction:column;gap:10px}
  .kw-news__input{border-right:1px solid var(--kw-black)}
  .kw-footer__grid{grid-template-columns:1fr}
}
