/*
Theme Name: Pobrania w Domu
Template: storefront
Version: 1.1.0
Description: Motyw potomny sklepu Pobrania w Domu — jasna paleta, kolorowe akcenty, karty kategorii.
Text Domain: pobrania-w-domu
*/

:root {
  --lx-navy: #04387C;
  --lx-blue: #0A84D8;
  --lx-blue-light: #009EE3;
  --lx-mint: #E8F6FB;
  --lx-soft: #F2F9FF;
  --lx-olive: #8FA83A;
  --lx-gold: #F7C600;
  --lx-line: #DCE8F5;
  --lx-text: #17263D;
  --lx-muted: #5A6B85;
}

body, button, input, select, textarea {
  font-family: Manrope, "Segoe UI", system-ui, -apple-system, sans-serif !important;
  color: var(--lx-text);
  background: #FFFFFF;
}

a { color: var(--lx-blue); }
a:hover { color: var(--lx-navy); }

/* pasek górny */
.lx-topbar { background: var(--lx-olive); color: #fff; font-size: 13.5px; padding: 9px 16px; text-align: center; letter-spacing: .2px; }
.lx-topbar a { color: #fff; font-weight: 700; text-decoration: none; }

/* nagłówek */
.site-header { background: #fff; border-bottom: 1px solid var(--lx-line); padding: 14px 0; }
.site-branding .site-title, .site-branding .site-title a { color: var(--lx-navy) !important; font-weight: 800; letter-spacing: -.3px; }
.custom-logo { max-height: 74px; width: auto !important; border-radius: 10px; }
@media (max-width: 640px) { .custom-logo { max-height: 58px; } }
.lx-topbar { background: var(--lx-olive); color: #fff; font-size: 13px; padding: 8px 14px; text-align: center; letter-spacing: .1px; }
@media (max-width: 480px) { .lx-topbar { font-size: 12px; padding: 6px 10px; line-height: 1.35; } }
.site-branding .site-description { color: var(--lx-muted) !important; }
.storefront-primary-navigation { background: var(--lx-soft) !important; border-bottom: 1px solid var(--lx-line); }
.main-navigation ul li a { color: var(--lx-navy) !important; font-weight: 700; padding: 14px 16px; position: relative; }
.main-navigation ul li a:hover, .main-navigation ul li.current-menu-item > a { color: var(--lx-blue) !important; }
.main-navigation ul li.current-menu-item > a::after { content: ""; position: absolute; left: 16px; right: 16px; bottom: 6px; height: 3px; background: var(--lx-gold); border-radius: 3px; }

/* hero */
.lx-hero { background: linear-gradient(160deg, #E9F6FF 0%, #F7FCFF 55%, #FFFFFF 100%); padding: 54px 20px 46px; text-align: center; border-bottom: 1px solid var(--lx-line); }
.lx-hero-in { display: grid; grid-template-columns: 1.05fr .95fr; gap: 44px; align-items: center; max-width: 1180px; margin: 0 auto; text-align: left; }
.lx-hero h1 { color: var(--lx-navy); font-size: 42px; line-height: 1.16; font-weight: 800; margin: 0 0 16px; max-width: 620px; letter-spacing: -.6px; }
.lx-hero p { color: var(--lx-muted); font-size: 18px; max-width: 620px; margin: 0 0 8px; }
.lx-hero-foto img { width: 100%; height: 380px; object-fit: cover; border-radius: 22px; box-shadow: 0 24px 50px rgba(4,56,124,.18); display: block; }
@media (max-width: 900px) {
  .lx-hero-in { grid-template-columns: 1fr; gap: 24px; text-align: center; }
  .lx-hero h1, .lx-hero p { text-align: center; margin-left: auto; margin-right: auto; }
  .lx-hero-foto { order: -1; }
  .lx-hero-foto img { height: 190px; border-radius: 16px; }
  .lx-hero h1 { font-size: 27px; line-height: 1.2; }
  .lx-hero { padding: 26px 16px 30px; }
}
.lx-hero .lx-btn { display: inline-block; background: var(--lx-blue); color: #fff; font-weight: 800; padding: 15px 34px; border-radius: 999px; text-decoration: none; font-size: 16px; box-shadow: 0 10px 24px rgba(10,132,216,.25); }
.lx-hero .lx-btn:hover { background: var(--lx-navy); color: #fff; }

/* wyszukiwarka */
.lx-szukaj { max-width: 680px; margin: 28px auto 0; }
.lx-szukaj form { display: flex; box-shadow: 0 10px 26px rgba(4,56,124,.10); border-radius: 999px; overflow: hidden; background: #fff; }
.lx-szukaj input[type="search"] { flex: 1; border: 1px solid var(--lx-line); border-right: 0; border-radius: 999px 0 0 999px; padding: 15px 20px; font-size: 16px; outline: none; }
.lx-szukaj button { background: var(--lx-navy); color: #fff; border: 0; padding: 0 30px; font-weight: 700; cursor: pointer; font-size: 15px; }
.lx-skroty { margin-top: 14px; font-size: 14px; color: var(--lx-muted); }
.lx-skroty a { color: var(--lx-navy); margin: 0 5px; text-decoration: none; font-weight: 600; background: #fff; border: 1px solid var(--lx-line); padding: 4px 12px; border-radius: 999px; display: inline-block; }
.lx-skroty a:hover { border-color: var(--lx-blue); color: var(--lx-blue); }

/* sekcje */
.lx-sekcja { padding: 56px 20px; }
.lx-sekcja--tlo { background: var(--lx-soft); }
.lx-sekcja h2 { font-size: 32px; font-weight: 800; color: var(--lx-navy); text-align: center; margin: 0 0 10px; letter-spacing: -.4px; }
.lx-sekcja h2::after { content: ""; display: block; width: 54px; height: 4px; background: var(--lx-gold); border-radius: 4px; margin: 12px auto 0; }
.lx-sekcja .lx-podtytul { text-align: center; color: var(--lx-muted); font-size: 17px; margin: 16px 0 34px; }
.lx-wrap { max-width: 1180px; margin: 0 auto; }

/* kafle kategorii */
.lx-kafle { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 16px; }
.lx-kafel { display: block; background: #fff; border: 1px solid var(--lx-line); border-left: 5px solid var(--lx-blue); border-radius: 14px; padding: 18px; text-decoration: none; font-weight: 800; color: var(--lx-navy); transition: .18s; box-shadow: 0 3px 10px rgba(4,56,124,.04); }
.lx-kafel span { display: block; font-weight: 500; font-size: 13px; color: var(--lx-muted); margin-top: 6px; }
.lx-kafel:hover { border-color: var(--lx-blue); transform: translateY(-3px); box-shadow: 0 12px 26px rgba(4,56,124,.12); }
.lx-kafel:nth-child(3n+2) { border-left-color: var(--lx-olive); }
.lx-kafel:nth-child(3n+3) { border-left-color: var(--lx-gold); }

/* kroki */
.lx-kroki { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 20px; }
.lx-krok { background: #fff; border-radius: 16px; padding: 24px; border: 1px solid var(--lx-line); box-shadow: 0 6px 18px rgba(4,56,124,.05); }
.lx-krok b { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 50%; background: var(--lx-mint); color: var(--lx-blue); font-size: 16px; margin-bottom: 12px; }
.lx-krok h3 { margin: 0 0 8px; font-size: 19px; color: var(--lx-navy); }
.lx-krok p { margin: 0; color: var(--lx-muted); font-size: 15px; line-height: 1.55; }

/* produkty */
.woocommerce ul.products li.product { background: #fff; border: 1px solid var(--lx-line); border-radius: 16px; padding: 14px; transition: .18s; box-shadow: 0 3px 10px rgba(4,56,124,.04); }
.woocommerce ul.products li.product:hover { transform: translateY(-3px); box-shadow: 0 14px 28px rgba(4,56,124,.12); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { color: var(--lx-navy); font-weight: 700; font-size: 15px; line-height: 1.35; }
.woocommerce ul.products li.product .price { color: var(--lx-navy); font-weight: 800; font-size: 19px; }
.woocommerce ul.products li.product .button { background: var(--lx-blue) !important; color: #fff !important; border-radius: 999px !important; font-weight: 700; padding: 10px 18px !important; width: 100%; text-align: center; }
.woocommerce ul.products li.product .button:hover { background: var(--lx-navy) !important; }
.woocommerce ul.products li.product img { border-radius: 10px; }

/* wybór miasta */
.lx-miasta { border-radius: 14px !important; background: var(--lx-soft) !important; border-color: var(--lx-line) !important; }
.lx-miasta a:hover { background: var(--lx-mint) !important; }

/* treść */
.entry-content h2, .woocommerce-Tabs-panel h2 { color: var(--lx-navy); font-weight: 800; }
.entry-content h3, .woocommerce-Tabs-panel h3 { color: var(--lx-navy); font-weight: 700; }
details { border: 1px solid var(--lx-line); border-radius: 10px; padding: 12px 16px; margin: 10px 0; background: #fff; }
details summary { cursor: pointer; font-weight: 700; color: var(--lx-blue); }
.lx-btn, .entry-content .lx-btn { display: inline-block; background: var(--lx-blue); color: #fff !important; padding: 13px 28px; border-radius: 999px; font-weight: 800; text-decoration: none; margin-top: 12px; }
.lx-btn:hover { background: var(--lx-navy); }

/* pasek zdjęć */
.lx-foto-pas { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.lx-foto-pas img { width: 100%; height: 300px; object-fit: cover; border-radius: 18px; box-shadow: 0 14px 30px rgba(4,56,124,.12); display: block; }
@media (max-width: 860px) { .lx-foto-pas { grid-template-columns: 1fr; } .lx-foto-pas img { height: 230px; } }
.lx-kat-foto { margin: 0 0 20px; }
.lx-kat-foto img { width: 100%; height: 260px; object-fit: cover; border-radius: 18px; }
.lx-kat-opis { max-width: 860px; margin: 0 auto 30px; }
.lx-kat-opis .lx-kat-tytul { font-size: 27px; color: var(--lx-navy); margin: 0 0 12px; font-weight: 800; }
.lx-kat-opis p { color: var(--lx-muted); font-size: 16px; line-height: 1.65; margin: 0 0 12px; }

/* dolny pasek na telefonie — niższy */
.storefront-handheld-footer-bar { border-top: 1px solid var(--lx-line); }
.storefront-handheld-footer-bar ul li > a { height: 52px !important; line-height: 52px !important; font-size: 0 !important; padding: 0 !important; }
.storefront-handheld-footer-bar ul li > a::before { font-size: 21px !important; }
.storefront-handheld-footer-bar ul li.cart .count { font-size: 11px !important; min-width: 17px; height: 17px; line-height: 17px; top: 6px; }
.storefront-handheld-footer-bar ul li.my-account > a::before { content: "\f007"; }
@media (max-width: 768px) { body { padding-bottom: 52px; } }

/* stopka */
.site-footer { background: var(--lx-navy); color: #C9DCF2; border-top: 0; padding: 34px 0 10px; }
.footer-widgets { display: grid !important; grid-template-columns: repeat(4, 1fr); gap: 26px; margin-bottom: 10px; }
.footer-widgets .block { width: auto !important; float: none !important; margin: 0 !important; padding: 0 !important; }
.footer-widgets .widget { margin: 0 0 6px !important; }
.footer-widgets h2, .footer-widgets .widget-title { color: #fff !important; font-size: 16px; margin: 0 0 10px; text-transform: none; letter-spacing: 0; }
.footer-widgets p, .footer-widgets li, .footer-widgets span { color: #C9DCF2; font-size: 14.5px; line-height: 1.6; }
.footer-widgets ul { list-style: none; margin: 0; padding: 0; }
.footer-widgets li { padding: 0 0 4px; }
@media (max-width: 820px) {
  .footer-widgets { grid-template-columns: 1fr 1fr; gap: 18px; }
}
@media (max-width: 480px) {
  .footer-widgets { grid-template-columns: 1fr; gap: 14px; }
}
.site-footer h1, .site-footer h2, .site-footer h3, .site-footer h4 { color: #fff; }
.site-footer a { color: #fff; }
.site-footer a:hover { color: var(--lx-gold); }
.site-footer .site-info { color: #A9C1DC; border-top: 1px solid rgba(255,255,255,.15); margin-top: 26px; padding-top: 18px; }
