/*
Theme Name: Eliza Hats
Theme URI: https://elizahats.pl/
Author: Eliza Hats
Description: Lekki, minimalistyczny motyw dla marki ręcznie szytych czapek Eliza Hats. Klasyczny motyw gotowy pod WooCommerce — czarno-biała estetyka, hairline'owe ramki, akcenty w kroju szeryfowym. Zbudowany na bazie statycznej strony marki.
Version: 1.0.9
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: elizahats
WC requires at least: 8.0
WC tested up to: 9.0
*/

:root{
  --ink:#1D1B1A;
  --paper:#FAF7F2;
  --card:#FFFFFF;
  --sand:#C29B70;
  --sand-light:#F3EDE4;
  --sand-dark:#9E744A;
  --muted:#6D6762;
  --muted-2:#3A3633;
  --light:#C4BCB3;
  --soft:#ECE5DC;
  --hair:#E4DDD2;
  --serif:'Instrument Serif', Georgia, serif;
  --sans:'Archivo', system-ui, -apple-system, 'Segoe UI', sans-serif;
}

*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0; background:var(--paper); color:var(--ink);
  font-family:var(--sans); -webkit-font-smoothing:antialiased; overflow-x:hidden;
  line-height:1.6;
}
img{ max-width:100%; height:auto; }
a{ color:var(--ink); text-decoration:none; }
a:hover{ color:var(--muted); }
::selection{ background:var(--ink); color:#fff; }
h1,h2,h3{ margin:0; font-weight:700; letter-spacing:-0.01em; line-height:1.1; }
.serif{ font-family:var(--serif); font-style:italic; font-weight:400; }
.wrap{ max-width:1240px; margin:0 auto; }

/* ---------- NAV ---------- */
.site-nav{
  position:sticky; top:0; z-index:50; display:flex; align-items:center;
  justify-content:space-between; flex-wrap:wrap; gap:12px 20px;
  padding:14px clamp(20px,4vw,48px);
  background:rgba(255,255,255,0.92); backdrop-filter:blur(8px);
  border-bottom:1px solid var(--hair);
}
.site-nav .logo img{ height:clamp(34px,6vw,44px); width:auto; display:block; }
.site-nav .logo .wordmark{ font-family:var(--serif); font-style:italic; font-size:26px; }
.nav-links{
  display:flex; align-items:center; flex-wrap:wrap; gap:10px clamp(16px,3vw,36px);
  font-size:12px; font-weight:600; letter-spacing:0.12em; text-transform:uppercase;
  list-style:none; margin:0; padding:0;
}
.nav-links a{ display:inline-block; }
.nav-cta{ padding:12px 20px; background:var(--ink); color:#fff !important; letter-spacing:0.12em; }
.nav-cta:hover{ background:var(--muted-2); color:#fff !important; }
.nav-cart{ position:relative; }
.nav-cart .count{ font-family:var(--serif); font-style:italic; }

/* ---------- HERO ---------- */
.hero{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));
  border-bottom:1px solid var(--hair);
}
.hero-copy{
  display:flex; flex-direction:column; justify-content:center; gap:clamp(20px,3vw,28px);
  padding:clamp(48px,7vw,72px) clamp(24px,5vw,64px);
  min-height:clamp(420px,60vh,640px); background:var(--ink); color:#fff;
}
.hero-eyebrow{ font-size:12px; font-weight:600; letter-spacing:0.28em; text-transform:uppercase; color:var(--light); }
.hero h1{ font-size:clamp(38px,6.5vw,64px); line-height:1.04; text-wrap:pretty; }
.hero h1 em{ font-family:var(--serif); font-style:italic; font-weight:400; }
.hero p{ margin:0; max-width:46ch; font-size:clamp(15px,1.6vw,17px); line-height:1.65; color:var(--soft); text-wrap:pretty; }
.hero-actions{ display:flex; align-items:center; flex-wrap:wrap; gap:16px 20px; margin-top:8px; }
.hero-img{ position:relative; min-height:clamp(320px,50vh,480px); overflow:hidden; }
.hero-img img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }

/* ---------- BUTTONS ---------- */
.btn{
  display:inline-block; padding:16px 28px; font-size:13px; font-weight:700;
  letter-spacing:0.14em; text-transform:uppercase; border:1px solid var(--ink); cursor:pointer;
}
.btn-light{ background:#fff; color:var(--ink); }
.btn-light:hover{ background:var(--soft); color:var(--ink); }
.btn-dark{ background:var(--ink); color:#fff; }
.btn-dark:hover{ background:var(--muted-2); color:#fff; }
.link-underline{ color:#fff; font-size:13px; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; border-bottom:1px solid #fff; padding-bottom:4px; }
.link-underline:hover{ color:var(--light); }

/* ---------- STEPS ---------- */
.steps{ display:grid; grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr)); border-bottom:1px solid var(--hair); }
.step{ display:flex; flex-direction:column; gap:10px; padding:clamp(28px,4vw,36px) clamp(24px,4vw,48px); border-right:1px solid var(--hair); }
.step .num{ font-family:var(--serif); font-style:italic; font-size:30px; line-height:1; }
.step .title{ font-size:13px; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; }
.step .desc{ font-size:14px; line-height:1.6; color:var(--muted); text-wrap:pretty; }

/* ---------- SECTION SHELL ---------- */
.section{ padding:clamp(56px,8vw,88px) clamp(24px,4vw,48px); border-bottom:1px solid var(--hair); }
.section-head{ display:flex; align-items:baseline; justify-content:space-between; flex-wrap:wrap; gap:12px 24px; margin-bottom:clamp(32px,5vw,48px); }
.section-head h2{ font-size:clamp(30px,4.5vw,42px); }
.section-head .note{ font-size:13px; letter-spacing:0.14em; text-transform:uppercase; color:var(--muted); }
.section-foot-note{ margin-top:40px; font-size:13px; color:var(--muted); letter-spacing:0.04em; }

/* ---------- BRAND / O MARCE ---------- */
.brand-section{ display:grid; grid-template-columns:repeat(auto-fit,minmax(min(380px,100%),1fr)); border-bottom:1px solid var(--hair); }
.brand-logo{ display:flex; align-items:center; justify-content:center; padding:clamp(48px,7vw,72px); border-right:1px solid var(--hair); }
.brand-logo img{ width:100%; max-width:340px; }
.brand-text{ display:flex; flex-direction:column; justify-content:center; gap:22px; padding:clamp(56px,8vw,88px) clamp(24px,5vw,64px); }
.brand-text .eyebrow{ font-size:12px; font-weight:600; letter-spacing:0.28em; text-transform:uppercase; color:var(--muted); }
.brand-text h2{ font-size:clamp(30px,4.5vw,42px); line-height:1.1; text-wrap:pretty; }
.brand-text h2 em{ font-family:var(--serif); font-style:italic; font-weight:400; }
.brand-text p{ margin:0; font-size:16px; line-height:1.7; color:var(--muted-2); max-width:56ch; text-wrap:pretty; }

/* ---------- CONTACT ---------- */
.contact{ display:grid; grid-template-columns:repeat(auto-fit,minmax(min(400px,100%),1fr)); background:var(--ink); color:#fff; }
.contact-info{ display:flex; flex-direction:column; justify-content:space-between; gap:40px; padding:clamp(56px,8vw,88px) clamp(24px,5vw,64px); border-right:1px solid var(--muted-2); }
.contact-info .eyebrow{ font-size:12px; font-weight:600; letter-spacing:0.28em; text-transform:uppercase; color:var(--light); }
.contact-info h2{ font-size:clamp(30px,4.5vw,42px); line-height:1.1; }
.contact-info p{ margin:0; font-size:15px; line-height:1.7; color:var(--light); max-width:44ch; text-wrap:pretty; }
.contact-info a.mail{ color:#fff; border-bottom:1px solid var(--muted); padding-bottom:8px; width:fit-content; }
.contact-info a.mail:hover{ color:var(--light); }
.contact-form{ display:flex; flex-direction:column; gap:22px; padding:clamp(40px,8vw,88px) clamp(24px,5vw,64px); }
.contact-form .row{ display:grid; grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr)); gap:22px; }
.contact-form label{ display:flex; flex-direction:column; gap:8px; font-size:12px; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; color:var(--light); }
.contact-form input,.contact-form select,.contact-form textarea{
  padding:14px 16px; background:transparent; border:1px solid var(--muted); color:#fff;
  font-family:var(--sans); font-size:15px; outline:none;
}
.contact-form select{ background:var(--ink); }
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{ border-color:#fff; }
.contact-form textarea{ resize:vertical; }

/* ---------- FOOTER ---------- */
.site-footer{
  display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:14px 24px;
  padding:24px clamp(24px,4vw,48px); background:var(--ink); color:var(--muted);
  border-top:1px solid var(--muted-2); font-size:12px; letter-spacing:0.1em; text-transform:uppercase;
}
.site-footer a{ color:var(--light); }
.site-footer a:hover{ color:#fff; }
.footer-links{ display:flex; gap:28px; }

/* ==========================================================
   WOOCOMMERCE — dopasowanie do estetyki marki
   ========================================================== */
.woo-wrap{ padding:clamp(48px,7vw,80px) clamp(24px,4vw,48px); max-width:1240px; margin:0 auto; }
.woocommerce .page-title,
.woocommerce-products-header__title{ font-size:clamp(30px,4.5vw,42px); font-weight:700; letter-spacing:-0.01em; margin-bottom:24px; }

/* siatka produktów */
.woocommerce ul.products{
  display:grid !important; grid-template-columns:repeat(4,1fr) !important;
  gap:clamp(20px,3vw,28px); margin:0 auto; padding:0; list-style:none; max-width:1240px; width:100%;
}
.woocommerce ul.products::before, .woocommerce ul.products::after{ content:none !important; display:none !important; }
@media(max-width:900px){ .woocommerce ul.products{ grid-template-columns:repeat(2,1fr) !important; } }
@media(max-width:520px){ .woocommerce ul.products{ grid-template-columns:1fr !important; } }
.woocommerce ul.products li.product{ margin:0 !important; width:auto !important; float:none !important; text-align:left; display:flex; flex-direction:column; height:100%; }
.woocommerce ul.products li.product a img{ margin:0 0 14px; border:1px solid var(--hair); width:100%; aspect-ratio:4/5; object-fit:cover; }
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  padding:0 0 6px !important; font-size:15px; font-weight:700; letter-spacing:0.06em; text-transform:uppercase; min-height:2.6em;
}
.woocommerce ul.products li.product .price{
  color:var(--ink) !important; font-family:var(--serif); font-style:italic; font-size:18px; font-weight:400 !important; display:block; margin-top:auto;
}
.woocommerce ul.products li.product .price del{ color:var(--muted) !important; }
.woocommerce ul.products li.product .button{ margin-top:10px; align-self:flex-start; }

/* przyciski Woo */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce #respond input#submit{
  background:var(--ink); color:#fff; border-radius:0; padding:14px 24px;
  font-family:var(--sans); font-size:12px; font-weight:700; letter-spacing:0.14em; text-transform:uppercase;
}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce #respond input#submit:hover{
  background:var(--muted-2); color:#fff;
}

/* pojedynczy produkt */
.woocommerce div.product .product_title{ font-size:clamp(28px,4vw,40px); font-weight:700; letter-spacing:-0.01em; }
.woocommerce div.product p.price,.woocommerce div.product span.price{ color:var(--ink); font-family:var(--serif); font-style:italic; font-size:26px; }
.woocommerce div.product .woocommerce-product-gallery__image img{ border:1px solid var(--hair); }
.woocommerce span.onsale{ background:var(--ink); color:#fff; border-radius:0; }

/* komunikaty / notyfikacje */
.woocommerce-message,.woocommerce-info,.woocommerce-error{ border-top-color:var(--ink); }
.woocommerce-message::before,.woocommerce-info::before{ color:var(--ink); }

/* pola formularzy (koszyk / zamówienie) */
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce .select2-container{ border-radius:0; }
.woocommerce table.shop_table,.woocommerce table.shop_table td,.woocommerce table.shop_table th{ border-color:var(--hair); }

/* responsywność drobne */
@media (max-width:600px){
  .footer-links{ gap:18px; }
  .step{ border-right:none; }
}

/* ---------- KOSZYK & FORMULARZ KONTAKTOWY (DODATKI) ---------- */
.menu-item-cart{ display:inline-flex; align-items:center; }
.nav-cart{
  display:inline-flex; align-items:center; gap:4px;
  padding:8px 14px; border:1px solid var(--ink);
  font-size:12px; font-weight:700; letter-spacing:0.12em; text-transform:uppercase;
  transition:background 0.2s, color 0.2s;
}
.nav-cart:hover{ background:var(--ink); color:#fff !important; }
.nav-cart .count{ font-family:var(--serif); font-style:italic; font-size:14px; }

.contact-notice{
  padding:14px 18px; margin-bottom:12px;
  font-size:14px; line-height:1.5; font-weight:500;
  border:1px solid currentColor;
}
.contact-notice.success{ background:transparent; color:#fff; border-color:#fff; }
.contact-notice.error{ background:rgba(255,255,255,0.08); color:#ffb3b3; border-color:#ff8080; }

/* Ukrycie niepotrzebnego sidebaru / widgetów w sklepie WooCommerce oraz SKU */
.woocommerce aside, .woocommerce #sidebar, .woocommerce .widget-area{ display:none !important; }
.sku_wrapper{ display:none !important; }

/* ---------- STYLOWANIE OPCJI DOSTAWY (KOSZYK I KASA) ---------- */
.woocommerce ul#shipping_method{ list-style:none !important; margin:12px 0 !important; padding:0 !important; }
.woocommerce ul#shipping_method li{
  display:flex !important; align-items:center !important; gap:10px !important;
  padding:12px 14px !important; margin-bottom:8px !important;
  border:1px solid #e2e2e4 !important; background:#fafafa !important;
  text-indent:0 !important; cursor:pointer !important;
  transition:border-color 0.2s, background 0.2s !important;
}
.woocommerce ul#shipping_method li:hover{
  border-color:var(--ink) !important; background:#fff !important;
}
.woocommerce ul#shipping_method li input[type='radio']{
  width:18px !important; height:18px !important; margin:0 !important;
  padding:0 !important; accent-color:var(--ink) !important; cursor:pointer !important; flex-shrink:0 !important;
}
.woocommerce ul#shipping_method li label{
  display:inline-flex !important; flex-direction:row !important; align-items:center !important; flex-wrap:wrap !important;
  gap:6px !important; margin:0 !important; font-size:14px !important; font-weight:600 !important;
  color:var(--ink) !important; text-transform:none !important; letter-spacing:0 !important; cursor:pointer !important;
}
.woocommerce ul#shipping_method li label .woocommerce-Price-amount{ font-weight:700 !important; color:var(--ink) !important; }
.woocommerce ul#shipping_method li .inpost_pl-shipping-method-meta-wrap{ margin-left:auto !important; }
.woocommerce ul#shipping_method li .inpost_pl-shipping-method-meta-wrap img{ max-height:22px !important; width:auto !important; }
.woocommerce-shipping-destination{ font-size:13px !important; color:#666 !important; margin-top:8px !important; }
.shipping-calculator-button{ font-size:12px !important; font-weight:700 !important; text-transform:uppercase !important; letter-spacing:0.08em !important; color:var(--ink) !important; text-decoration:underline !important; }

/* ---------- 2-KOLUMNOWY NOWOCZESNY UKŁAD KOSZYKA ---------- */
.woocommerce-cart .site-main, .woocommerce-cart .woocommerce{ max-width:1200px; margin:0 auto; }
.woocommerce-cart .woocommerce{
  display:grid !important; grid-template-columns:1fr 420px !important;
  gap:48px !important; align-items:start !important;
}
.woocommerce-cart .woocommerce-notices-wrapper{ grid-column:1 / -1; }
.woocommerce-cart .woocommerce-cart-form{ margin-bottom:0 !important; }
.woocommerce-cart .cart-collaterals{ width:100% !important; float:none !important; position:sticky; top:90px; }
.woocommerce-cart .cart_totals{
  width:100% !important; float:none !important; background:#fafafa !important;
  border:1px solid #e8e8ea !important; padding:28px 24px !important;
}
.woocommerce-cart .cart_totals h2{
  font-family:var(--sans) !important; font-size:18px !important; font-weight:700 !important;
  letter-spacing:0.06em !important; text-transform:uppercase !important;
  margin-top:0 !important; margin-bottom:16px !important; padding-bottom:12px !important;
  border-bottom:1px solid #e8e8ea !important;
}
.woocommerce-cart .cart_totals table.shop_table{ width:100% !important; border-collapse:collapse !important; border:none !important; margin-bottom:20px !important; }
.woocommerce-cart .cart_totals table.shop_table th{
  font-size:13px !important; font-weight:700 !important; text-transform:uppercase !important;
  letter-spacing:0.08em !important; color:var(--ink) !important;
  padding:12px 0 !important; border-top:none !important; border-bottom:1px solid #eee !important;
  width:100px !important; text-align:left !important;
}
.woocommerce-cart .cart_totals table.shop_table td{ padding:12px 0 !important; border-top:none !important; border-bottom:1px solid #eee !important; text-align:right !important; }
.woocommerce-cart .cart_totals table.shop_table tr.shipping th{ display:block !important; width:100% !important; padding-bottom:6px !important; border-bottom:none !important; }
.woocommerce-cart .cart_totals table.shop_table tr.shipping td{ display:block !important; width:100% !important; padding-top:0 !important; text-align:left !important; border-bottom:1px solid #eee !important; }
.woocommerce-cart .cart_totals table.shop_table tr.order-total th, .woocommerce-cart .cart_totals table.shop_table tr.order-total td{ font-size:16px !important; font-weight:700 !important; border-bottom:none !important; padding-top:16px !important; }
.woocommerce-cart .wc-proceed-to-checkout{ padding:0 !important; }
.woocommerce-cart .wc-proceed-to-checkout .checkout-button{
  display:block !important; width:100% !important; text-align:center !important;
  padding:16px 24px !important; font-size:13px !important; box-sizing:border-box !important;
}
.woocommerce-cart ul#shipping_method{ width:100% !important; margin:8px 0 12px 0 !important; }
.woocommerce-cart ul#shipping_method li{
  display:flex !important; align-items:center !important; justify-content:flex-start !important;
  width:100% !important; box-sizing:border-box !important; padding:12px 14px !important;
  margin-bottom:8px !important; border:1px solid #e2e2e4 !important; background:#fff !important;
}
.woocommerce-cart ul#shipping_method li label{
  display:inline-flex !important; align-items:center !important; gap:6px !important;
  flex:1 !important; white-space:nowrap !important; font-size:13px !important;
}
.woocommerce-cart ul#shipping_method li .inpost_pl-shipping-method-meta-wrap{ margin-left:auto !important; flex-shrink:0 !important; }
@media (max-width:960px){
  .woocommerce-cart .woocommerce{ grid-template-columns:1fr !important; gap:32px !important; }
  .woocommerce-cart .cart-collaterals{ position:static; }
}

/* ---------- ZAAWANSOWANE STYLOWANIE KOSZYKA E-LIZA ---------- */
.woocommerce-cart .entry-content, .woocommerce-checkout .entry-content, .woocommerce-account .entry-content{
  max-width:1200px !important; width:100% !important; margin:0 auto !important;
}
.woocommerce-cart table.shop_table.cart{
  width:100% !important; border:1px solid #e8e8ea !important; border-collapse:collapse !important; background:#fff !important;
}
.woocommerce-cart table.shop_table.cart th{
  background:#fafafa !important; padding:14px 16px !important; font-family:var(--sans) !important;
  font-size:12px !important; font-weight:700 !important; letter-spacing:0.1em !important;
  text-transform:uppercase !important; color:var(--ink) !important; border-bottom:1px solid #e8e8ea !important;
}
.woocommerce-cart table.shop_table.cart td{
  padding:16px !important; vertical-align:middle !important; border-bottom:1px solid #f0f0f2 !important; color:var(--ink) !important;
}
.woocommerce-cart table.shop_table.cart .product-remove{ width:32px !important; text-align:center !important; }
.woocommerce-cart table.shop_table.cart .product-remove a.remove{
  font-size:20px !important; color:#c0392b !important; text-decoration:none !important; font-weight:bold !important;
}
.woocommerce-cart table.shop_table.cart .product-thumbnail{ width:80px !important; padding:12px !important; }
.woocommerce-cart table.shop_table.cart .product-thumbnail img{
  width:70px !important; height:70px !important; object-fit:cover !important; border-radius:2px !important; display:block !important;
}
.woocommerce-cart table.shop_table.cart .product-name a{
  font-family:var(--sans) !important; font-size:15px !important; font-weight:600 !important;
  color:var(--ink) !important; text-decoration:none !important;
}
.woocommerce-cart table.shop_table.cart .product-price, .woocommerce-cart table.shop_table.cart .product-subtotal{
  font-family:var(--sans) !important; font-size:15px !important; font-weight:600 !important; color:var(--ink) !important;
}
.woocommerce-cart table.shop_table.cart .quantity input.qty{
  width:64px !important; padding:8px !important; text-align:center !important; border:1px solid #ccc !important; font-size:14px !important;
}
.woocommerce-cart table.shop_table.cart td.actions{ padding:16px !important; background:#fafafa !important; }
.woocommerce-cart table.shop_table.cart td.actions .coupon{ display:flex !important; align-items:center !important; gap:8px !important; float:left !important; }
.woocommerce-cart table.shop_table.cart td.actions .coupon input.input-text{
  padding:12px 14px !important; border:1px solid #ccc !important; font-size:13px !important; width:160px !important;
}
.woocommerce-cart table.shop_table.cart td.actions button.button{ padding:12px 20px !important; font-size:11px !important; }
.woocommerce-cart table.shop_table.cart td.actions button[name='update_cart']{ float:right !important; }
.woocommerce-cart .cart_totals{ background:#fff !important; border:1px solid #e8e8ea !important; padding:24px !important; }
.woocommerce-cart ul#shipping_method li{ padding:14px 16px !important; gap:12px !important; border:1px solid #e2e2e4 !important; }
.woocommerce-cart ul#shipping_method li label{
  display:flex !important; flex-direction:row !important; justify-content:space-between !important;
  align-items:center !important; width:100% !important; gap:10px !important; font-size:13px !important;
}
.woocommerce-cart ul#shipping_method li label .woocommerce-Price-amount{ font-weight:700 !important; margin-left:auto !important; padding-right:8px !important; }
.woocommerce-cart .woocommerce-shipping-destination, .woocommerce-cart .shipping-calculator-button{ display:none !important; }

/* ---------- STYLOWANIE DOLNEGO PASKA KOSZYKA (KUPON & AKTUALIZACJA) ---------- */
.woocommerce-cart table.shop_table.cart td.actions{ padding:18px 20px !important; background:#fafafa !important; border-top:1px solid #e8e8ea !important; }
.woocommerce-cart table.shop_table.cart td.actions .coupon{ display:inline-flex !important; align-items:center !important; gap:10px !important; float:left !important; }
.woocommerce-cart table.shop_table.cart td.actions .coupon input.input-text{
  height:46px !important; box-sizing:border-box !important; padding:0 16px !important;
  border:1px solid #d4d4d8 !important; background:#fff !important; color:var(--ink) !important;
  font-family:var(--sans) !important; font-size:13px !important; width:180px !important;
}
.woocommerce-cart table.shop_table.cart td.actions .coupon button.button{
  height:46px !important; box-sizing:border-box !important; padding:0 24px !important;
  background:var(--ink) !important; color:#fff !important; border:1px solid var(--ink) !important;
  font-family:var(--sans) !important; font-size:11px !important; font-weight:700 !important;
  letter-spacing:0.12em !important; text-transform:uppercase !important; cursor:pointer !important;
  transition:background 0.2s, border-color 0.2s !important;
}
.woocommerce-cart table.shop_table.cart td.actions .coupon button.button:hover{ background:var(--muted-2) !important; border-color:var(--muted-2) !important; }
.woocommerce-cart table.shop_table.cart td.actions button[name='update_cart']{
  height:46px !important; box-sizing:border-box !important; padding:0 24px !important; float:right !important;
  font-family:var(--sans) !important; font-size:11px !important; font-weight:700 !important;
  letter-spacing:0.12em !important; text-transform:uppercase !important; transition:all 0.2s ease !important;
}
.woocommerce-cart table.shop_table.cart td.actions button[name='update_cart']:disabled,
.woocommerce-cart table.shop_table.cart td.actions button[name='update_cart'][disabled],
.woocommerce-cart table.shop_table.cart td.actions button[name='update_cart']:disabled:hover{
  background:transparent !important; color:#888890 !important; border:1px solid #d4d4d8 !important;
  cursor:not-allowed !important; opacity:0.8 !important;
}
.woocommerce-cart table.shop_table.cart td.actions button[name='update_cart']:not(:disabled){
  background:var(--ink) !important; color:#fff !important; border:1px solid var(--ink) !important;
  cursor:pointer !important; opacity:1 !important;
}
.woocommerce-cart table.shop_table.cart td.actions button[name='update_cart']:not(:disabled):hover{
  background:var(--muted-2) !important; border-color:var(--muted-2) !important;
}
.woocommerce-cart ul#shipping_method li label{ white-space:nowrap !important; }

/* ---------- NOWOCZESNY 2-KOLUMNOWY CHECKOUT / KASA ---------- */
.woocommerce-checkout .entry-content{ max-width:1200px !important; width:100% !important; margin:0 auto !important; }
.woocommerce-checkout form.checkout{
  display:grid !important; grid-template-columns:1fr 440px !important;
  gap:48px !important; align-items:start !important; margin-top:20px !important;
}
.woocommerce-checkout #customer_details{ grid-column:1 !important; width:100% !important; float:none !important; }
.woocommerce-checkout #order_review_heading{ display:none !important; }
.woocommerce-checkout #order_review{ grid-column:2 !important; width:100% !important; float:none !important; position:sticky; top:90px; }

/* Nagłówki sekcji kasy */
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-shipping-fields h3,
.woocommerce-checkout .woocommerce-additional-fields h3{
  font-family:var(--sans) !important; font-size:15px !important; font-weight:700 !important;
  letter-spacing:0.08em !important; text-transform:uppercase !important; color:var(--ink) !important;
  margin-top:0 !important; margin-bottom:18px !important; padding-bottom:10px !important; border-bottom:1px solid #e8e8ea !important;
}

/* Formularze i pola */
.woocommerce form .form-row{ margin:0 0 16px 0 !important; padding:0 !important; }
.woocommerce form .form-row-first, .woocommerce form .form-row-last{ width:48% !important; float:left !important; }
.woocommerce form .form-row-last{ float:right !important; }
.woocommerce form .form-row-wide{ clear:both !important; width:100% !important; }
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper::after,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper::after{ content:''; display:table; clear:both; }

.woocommerce-checkout input.input-text,
.woocommerce-checkout select,
.woocommerce-checkout .select2-container .select2-selection--single{
  height:48px !important; box-sizing:border-box !important; padding:0 16px !important;
  border:1px solid #d4d4d8 !important; background:#fff !important; color:var(--ink) !important;
  font-family:var(--sans) !important; font-size:14px !important; border-radius:0 !important;
  width:100% !important; outline:none !important; transition:border-color 0.2s !important;
}
.woocommerce-checkout input.input-text:focus, .woocommerce-checkout select:focus,
.woocommerce-checkout .select2-container--open .select2-selection--single{ border-color:var(--ink) !important; }

.woocommerce-checkout textarea{
  border:1px solid #d4d4d8 !important; padding:12px 16px !important; font-family:var(--sans) !important;
  font-size:14px !important; color:var(--ink) !important; border-radius:0 !important; width:100% !important;
  box-sizing:border-box !important; outline:none !important; min-height:90px !important;
}
.woocommerce-checkout textarea:focus{ border-color:var(--ink) !important; }

.woocommerce-checkout label{
  display:block !important; font-family:var(--sans) !important; font-size:11px !important;
  font-weight:700 !important; letter-spacing:0.08em !important; text-transform:uppercase !important;
  color:var(--ink) !important; margin-bottom:6px !important;
}
.woocommerce-checkout label .required{ color:#c0392b !important; text-decoration:none !important; }

/* Boks podsumowania zamówienia (prawa kolumna) */
.woocommerce-checkout #order_review{
  background:#fafafa !important; border:1px solid #e8e8ea !important;
  padding:28px 24px !important; box-sizing:border-box !important;
}
.woocommerce-checkout #order_review::before{
  content:'PODSUMOWANIE ZAMÓWIENIA'; display:block; font-family:var(--sans);
  font-size:15px; font-weight:700; letter-spacing:0.08em; color:var(--ink);
  margin-bottom:20px; padding-bottom:12px; border-bottom:1px solid #e8e8ea;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table{
  width:100% !important; border-collapse:collapse !important; border:none !important; margin-bottom:24px !important;
}
.woocommerce-checkout table.woocommerce-checkout-review-order-table th,
.woocommerce-checkout table.woocommerce-checkout-review-order-table td{
  padding:12px 0 !important; border-top:none !important; border-bottom:1px solid #eee !important;
  font-size:13px !important; color:var(--ink) !important;
}
.woocommerce-checkout table.woocommerce-checkout-review-order-table th{
  font-family:var(--sans) !important; font-weight:700 !important; text-transform:uppercase !important; letter-spacing:0.06em !important;
}
.woocommerce-checkout table.woocommerce-checkout-review-order-table td.product-total,
.woocommerce-checkout table.woocommerce-checkout-review-order-table td:last-child{ text-align:right !important; }
.woocommerce-checkout table.woocommerce-checkout-review-order-table tr.order-total th,
.woocommerce-checkout table.woocommerce-checkout-review-order-table tr.order-total td{
  font-size:16px !important; font-weight:700 !important; border-bottom:none !important; padding-top:16px !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table tr.shipping th{
  display:block !important; width:100% !important; padding-bottom:6px !important; border-bottom:none !important;
}
.woocommerce-checkout table.woocommerce-checkout-review-order-table tr.shipping td{
  display:block !important; width:100% !important; padding-top:0 !important; text-align:left !important; border-bottom:1px solid #eee !important;
}

.woocommerce-checkout ul#shipping_method{ list-style:none !important; margin:8px 0 12px 0 !important; padding:0 !important; }
.woocommerce-checkout ul#shipping_method li{
  display:flex !important; align-items:center !important; justify-content:flex-start !important;
  padding:12px 14px !important; margin-bottom:8px !important; border:1px solid #e2e2e4 !important;
  background:#fff !important; box-sizing:border-box !important; cursor:pointer !important;
  transition:border-color 0.2s, background 0.2s !important;
}
.woocommerce-checkout ul#shipping_method li:hover{ border-color:var(--ink) !important; }
.woocommerce-checkout ul#shipping_method li input[type='radio']{
  width:18px !important; height:18px !important; margin:0 10px 0 0 !important; padding:0 !important;
  accent-color:var(--ink) !important; cursor:pointer !important; flex-shrink:0 !important;
}
.woocommerce-checkout ul#shipping_method li label{
  display:inline-flex !important; align-items:center !important; gap:6px !important; flex:1 !important;
  white-space:nowrap !important; font-size:13px !important; font-weight:600 !important; color:var(--ink) !important;
  text-transform:none !important; letter-spacing:0 !important; margin:0 !important; cursor:pointer !important;
}
.woocommerce-checkout ul#shipping_method li label .woocommerce-Price-amount{ font-weight:700 !important; margin-left:auto !important; padding-right:8px !important; }
.woocommerce-checkout ul#shipping_method li .inpost_pl-shipping-method-meta-wrap{ margin-left:auto !important; flex-shrink:0 !important; }
.woocommerce-checkout ul#shipping_method li .inpost_pl-shipping-method-meta-wrap img{ max-height:22px !important; width:auto !important; }

/* InPost Przycisk wyboru paczkomatu */
.easypack-widget-btn, .inpost-pickup-point-btn, .open-geowidget-btn, #inpost_pickup_point_btn,
a.easypack-widget-btn, button.easypack-widget-btn{
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  background:#ffcc00 !important; color:#111 !important; font-family:var(--sans) !important;
  font-size:11px !important; font-weight:700 !important; letter-spacing:0.1em !important;
  text-transform:uppercase !important; padding:12px 18px !important; border:1px solid #e0b400 !important;
  cursor:pointer !important; margin:10px 0 !important; text-decoration:none !important;
  transition:background 0.2s !important;
}
.easypack-widget-btn:hover, .inpost-pickup-point-btn:hover{ background:#f0c000 !important; }

/* Sekcja metod płatności */
.woocommerce-checkout #payment{ background:transparent !important; border:none !important; padding:0 !important; }
.woocommerce-checkout #payment ul.payment_methods{ border:none !important; padding:0 !important; margin:0 0 20px 0 !important; list-style:none !important; }
.woocommerce-checkout #payment ul.payment_methods li{ background:#fff !important; border:1px solid #e2e2e4 !important; padding:14px 16px !important; margin-bottom:8px !important; }
.woocommerce-checkout #payment ul.payment_methods li label{ font-size:13px !important; font-weight:600 !important; text-transform:none !important; letter-spacing:0 !important; display:inline-flex !important; align-items:center !important; gap:8px !important; cursor:pointer !important; margin:0 !important; }
.woocommerce-checkout #payment ul.payment_methods li input[type='radio']{ accent-color:var(--ink) !important; width:18px !important; height:18px !important; margin:0 !important; cursor:pointer !important; }
.woocommerce-checkout #payment div.payment_box{ background:#fafafa !important; border:1px solid #eee !important; padding:12px 14px !important; margin:10px 0 0 0 !important; font-size:13px !important; line-height:1.5 !important; color:#555 !important; }
.woocommerce-checkout #payment div.payment_box::before{ display:none !important; }

/* Przycisk Kupuję i Płacę */
.woocommerce-checkout #place_order{
  display:block !important; width:100% !important; padding:16px 24px !important;
  background:var(--ink) !important; color:#fff !important; font-family:var(--sans) !important;
  font-size:13px !important; font-weight:700 !important; letter-spacing:0.14em !important;
  text-transform:uppercase !important; border:none !important; cursor:pointer !important;
  transition:background 0.2s !important; box-sizing:border-box !important;
}
.woocommerce-checkout #place_order:hover{ background:var(--muted-2) !important; }

@media (max-width:960px){
  .woocommerce-checkout form.checkout{ grid-template-columns:1fr !important; gap:32px !important; }
  .woocommerce-checkout #order_review{ position:static !important; }
  .woocommerce form .form-row-first, .woocommerce form .form-row-last{ width:100% !important; float:none !important; }
}

/* ---------- CIEPŁY KASZMIR & PIASEK (WARM LUXURY PALETTE) ---------- */
.top-announcement{
  background:var(--sand-light); color:var(--ink);
  font-family:var(--sans); font-size:11px; font-weight:700;
  letter-spacing:0.12em; text-transform:uppercase; padding:9px 16px;
  text-align:center; border-bottom:1px solid var(--hair);
}
.top-announcement .wrap{ display:flex; justify-content:center; align-items:center; gap:16px; flex-wrap:wrap; }
.top-announcement .sep{ color:var(--sand); }

.site-nav{
  background:rgba(250, 247, 242, 0.94) !important;
  border-bottom:1px solid var(--hair) !important;
}
.nav-cart{
  border:1px solid var(--sand) !important;
  background:var(--paper) !important;
  color:var(--ink) !important;
  transition:all 0.2s ease !important;
}
.nav-cart:hover{
  background:var(--sand) !important;
  border-color:var(--sand) !important;
  color:#fff !important;
}
.nav-cart .count{ color:var(--sand-dark) !important; }
.nav-cart:hover .count{ color:#fff !important; }

/* Przyciski z ciepłym efektem hover */
.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover,
.woocommerce #respond input#submit:hover, .btn:hover,
.woocommerce-checkout #place_order:hover,
.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover{
  background:var(--sand) !important;
  border-color:var(--sand) !important;
  color:#fff !important;
}

/* Szlachetne kafelki produktów w sklepie */
ul.products li.product{
  background:#fff !important;
  border:1px solid var(--hair) !important;
  padding:16px !important;
  transition:border-color 0.25s, box-shadow 0.25s, transform 0.25s !important;
}
ul.products li.product:hover{
  border-color:var(--sand) !important;
  box-shadow:0 12px 32px rgba(194, 155, 112, 0.12) !important;
  transform:translateY(-2px);
}
ul.products li.product .woocommerce-loop-product__title{ color:var(--ink) !important; }
ul.products li.product .price{ color:var(--sand-dark) !important; font-weight:700 !important; }

/* Akcenty w koszyku i kasie */
.woocommerce-cart ul#shipping_method li:hover,
.woocommerce-checkout ul#shipping_method li:hover{
  border-color:var(--sand) !important;
}
.woocommerce-cart ul#shipping_method li input[type='radio'],
.woocommerce-checkout ul#shipping_method li input[type='radio'],
.woocommerce-checkout #payment ul.payment_methods li input[type='radio']{
  accent-color:var(--sand) !important;
}
.woocommerce-cart ul#shipping_method li label .woocommerce-Price-amount,
.woocommerce-checkout ul#shipping_method li label .woocommerce-Price-amount{
  color:var(--sand-dark) !important;
}
.woocommerce-checkout input.input-text:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout textarea:focus,
.woocommerce-cart table.shop_table.cart td.actions .coupon input.input-text:focus{
  border-color:var(--sand) !important;
}

/* Stopka */
.site-footer{
  background:var(--sand-light) !important;
  border-top:1px solid var(--hair) !important;
  color:var(--ink) !important;
}
.footer-links a:hover{ color:var(--sand-dark) !important; }

/* ---------- CZYTELNA CZCIONKA LICZB I CEN (BEZ KURSORÓW SERIF) ---------- */
.woocommerce-Price-amount,
.woocommerce-Price-amount bdi,
.woocommerce-Price-currencySymbol,
.woocommerce-cart .product-price,
.woocommerce-cart .product-subtotal,
.woocommerce-cart .cart_totals td,
.woocommerce-cart .cart_totals th,
.woocommerce-checkout .woocommerce-checkout-review-order-table td,
.woocommerce-checkout .woocommerce-checkout-review-order-table th,
.woocommerce ul#shipping_method li label .woocommerce-Price-amount,
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.nav-cart .count,
.quantity input.qty{
  font-family:var(--sans) !important;
  font-style:normal !important;
  font-variant-numeric:tabular-nums lining-nums !important;
  font-feature-settings:'tnum' 1, 'lnum' 1 !important;
  letter-spacing:0 !important;
}
.woocommerce-cart .product-price, .woocommerce-cart .product-subtotal{
  font-family:var(--sans) !important;
  font-style:normal !important;
  font-size:15px !important;
  font-weight:700 !important;
}
.woocommerce-cart .cart_totals .order-total .amount,
.woocommerce-checkout .order-total .amount{
  font-family:var(--sans) !important;
  font-style:normal !important;
  font-weight:700 !important;
  font-size:18px !important;
}
.woocommerce-Price-currencySymbol{
  font-size:0.9em !important;
  margin-left:3px !important;
  font-weight:600 !important;
}
.nav-cart .count{
  font-family:var(--sans) !important;
  font-style:normal !important;
  font-weight:700 !important;
  font-size:12px !important;
}
