/* TEPLIVA – doplnkové štýly nad témou */

:root{
  --tp-warm:#c75b2a; --tp-warm-dark:#a8461c; --tp-amber:#e8a33d;
  --tp-ink:#1f2a33; --tp-muted:#5d6b77; --tp-sand:#faf6f1;
}

/* tlačidlá témy v teplých farbách */
.btn, input[type="submit"], .shopify-payment-button__button--unbranded{
  background-color:var(--tp-warm) !important; border-color:var(--tp-warm) !important; color:#fff !important; }
.btn:hover{ background-color:var(--tp-warm-dark) !important; }
a{ color:var(--tp-warm); }
.notification-bar{ background-color:var(--tp-ink) !important; }
.notification-bar__message{ color:#fff !important; }
.site-header__logo-image img{ max-width:230px !important; }
.main-content{ opacity:1 !important; }

.tp-btn{ display:inline-block; background:var(--tp-warm); color:#fff !important; padding:15px 34px;
  font-size:14.5px; letter-spacing:.09em; text-transform:uppercase; font-weight:700; text-decoration:none;
  border:0; cursor:pointer; border-radius:4px; }
.tp-btn:hover{ background:var(--tp-warm-dark); color:#fff !important; }
.tp-btn--ghost{ background:transparent; color:var(--tp-ink) !important; border:2px solid var(--tp-ink); }
.tp-btn--ghost:hover{ background:var(--tp-ink); color:#fff !important; }
.tp-btn--block{ display:block; width:100%; text-align:center; }

.tp-section{ padding:66px 0; }
.tp-section--light{ background:var(--tp-sand); }
.tp-section--dark{ background:var(--tp-ink); color:#fff; }
.tp-section--dark h2,.tp-section--dark p{ color:#fff; }
.tp-wrap{ max-width:1160px; margin:0 auto; padding:0 24px; }
.tp-center{ text-align:center; }
.tp-lead{ font-size:19px; line-height:1.7; max-width:820px; margin:0 auto 26px; color:var(--tp-muted); }
.tp-section--dark .tp-lead{ color:rgba(255,255,255,.84); }
.tp-eyebrow{ display:block; font-size:12px; letter-spacing:.22em; text-transform:uppercase;
  font-weight:700; color:var(--tp-warm); margin-bottom:13px; }
.tp-eyebrow--light{ color:var(--tp-amber); }
.tp-h1{ font-size:42px; line-height:1.14; margin:0 0 18px; color:var(--tp-ink); }
.tp-h2{ font-size:31px; line-height:1.22; margin:0 0 16px; color:var(--tp-ink); }
.tp-muted{ color:var(--tp-muted); }

.tp-page-hero{ background:var(--tp-sand); padding:62px 0 50px; text-align:center; }
.tp-page-hero .tp-h1{ margin-bottom:10px; }

.tp-hero{ position:relative; min-height:580px; display:flex; align-items:center;
  background-size:cover; background-position:center; }
.tp-hero:before{ content:""; position:absolute; inset:0;
  background:linear-gradient(100deg,rgba(24,18,12,.86) 0%,rgba(24,18,12,.6) 52%,rgba(24,18,12,.2) 100%); }
.tp-hero__inner{ position:relative; z-index:2; max-width:650px; padding:70px 24px; color:#fff;
  margin:0 auto 0 max(24px,calc(50vw - 580px)); }
.tp-hero h1{ color:#fff; font-size:48px; line-height:1.1; margin:0 0 18px; }
.tp-hero p{ color:rgba(255,255,255,.92); font-size:19px; line-height:1.65; margin:0 0 28px; }
.tp-hero .tp-eyebrow{ color:var(--tp-amber); }
.tp-hero__badges{ list-style:none; margin:28px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:10px 26px; }
.tp-hero__badges li{ font-size:15px; color:rgba(255,255,255,.9); position:relative; padding-left:24px; }
.tp-hero__badges li:before{ content:"✓"; position:absolute; left:0; color:var(--tp-amber); font-weight:700; }

.tp-strip{ background:var(--tp-warm); color:#fff; }
.tp-strip__inner{ max-width:1160px; margin:0 auto; padding:20px 24px; display:grid;
  grid-template-columns:repeat(4,1fr); gap:18px; }
.tp-strip div{ font-size:15px; font-weight:600; line-height:1.45; }

.tp-split{ display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:center; }
.tp-split--rev .tp-split__media{ order:2; }
.tp-cols3{ display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
.tp-img{ width:100%; height:auto; display:block; border-radius:6px; }

.tp-gallery{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.tp-gallery figure{ margin:0; }
.tp-gallery figcaption{ margin-top:10px; font-size:14.5px; color:var(--tp-muted); text-align:center; }

.tp-tick{ list-style:none; margin:0; padding:0; }
.tp-tick li{ position:relative; padding-left:28px; margin-bottom:12px; line-height:1.65; }
.tp-tick li:before{ content:"✓"; position:absolute; left:0; top:0; color:var(--tp-warm); font-weight:700; }

.tp-box{ background:var(--tp-sand); padding:30px 26px; height:100%; border-radius:6px; }
.tp-box h3{ font-size:19px; margin:0 0 10px; color:var(--tp-ink); }
.tp-box p{ font-size:15.5px; margin:0; color:var(--tp-muted); }

.tp-card{ background:#fff; border:1px solid #e6ded4; border-radius:6px; overflow:hidden; text-align:center; }
.tp-card img{ width:100%; height:auto; display:block; background:#faf6f1; }
.tp-card__body{ padding:26px 22px; }
.tp-card h3{ margin:0 0 8px; font-size:21px; }
.tp-card p{ color:var(--tp-muted); font-size:15.5px; }
.tp-card .price{ font-size:23px; font-weight:700; color:var(--tp-ink); margin-bottom:14px; }
.tp-card .price s{ color:#a8a096; font-weight:400; font-size:16px; margin-left:8px; }
.tp-badge{ display:inline-block; background:var(--tp-warm); color:#fff; font-size:11.5px;
  letter-spacing:.1em; text-transform:uppercase; padding:5px 11px; border-radius:3px;
  margin-bottom:10px; font-weight:700; }

.tp-quotes{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
.tp-quote{ background:var(--tp-sand); padding:28px; text-align:left; border-radius:6px; }
.tp-quote .stars{ color:var(--tp-amber); letter-spacing:2px; margin-bottom:10px; }
.tp-quote p{ font-size:16px; line-height:1.72; margin:0 0 14px; }
.tp-quote footer{ font-size:14px; color:var(--tp-muted); }
.tp-score{ font-size:40px; font-weight:700; margin:0; color:var(--tp-ink); }
.tp-stars-big{ color:var(--tp-amber); font-size:24px; margin:4px 0; }

.tp-gallery__main img{ width:100%; height:auto; display:block; border:1px solid #e6ded4; border-radius:6px; }
.tp-thumbs{ display:flex; gap:10px; margin-top:12px; }
.tp-thumbs img{ width:25%; height:auto; border:2px solid #e6ded4; border-radius:4px; cursor:pointer;
  display:block; background:#faf6f1; }
.tp-thumbs img.is-active{ border-color:var(--tp-warm); }

.tp-pick{ display:block; width:100%; text-align:left; border:2px solid #e6ded4; border-radius:6px;
  padding:15px 18px; margin-bottom:10px; background:#fff; cursor:pointer; font-size:16px; }
.tp-pick.is-active{ border-color:var(--tp-warm); background:#fdf4ee; }
.tp-pick b{ font-size:17px; }
.tp-pick span{ display:block; font-size:13px; color:var(--tp-muted); margin-top:2px; }
.tp-pick em{ float:right; font-style:normal; font-weight:700; }
.tp-price{ font-size:34px; font-weight:700; margin:16px 0 4px; color:var(--tp-ink); }
.tp-price s{ font-size:19px; color:#a8a096; font-weight:400; margin-left:10px; }
.tp-vat{ font-size:14px; color:var(--tp-muted); margin:0 0 16px; }
.tp-rating{ color:var(--tp-amber); margin-bottom:14px; }
.tp-rating span{ color:var(--tp-muted); font-size:14px; }

.tp-spec{ width:100%; border-collapse:collapse; font-size:15.5px; margin:18px 0; }
.tp-spec td{ padding:12px 14px; border-bottom:1px solid #ece4da; }
.tp-spec tr:nth-child(odd){ background:#faf6f1; }
.tp-spec td:first-child{ font-weight:600; width:48%; }

.tp-acc__item{ border-bottom:1px solid #e6ded4; text-align:left; }
.tp-acc__btn{ width:100%; background:none; border:0; text-align:left; padding:21px 42px 21px 0;
  font-size:18px; font-weight:600; cursor:pointer; position:relative; color:var(--tp-ink); }
.tp-acc__btn:after{ content:"+"; position:absolute; right:6px; top:50%; transform:translateY(-50%);
  font-size:26px; color:var(--tp-warm); font-weight:400; }
.tp-acc__item.is-open .tp-acc__btn:after{ content:"–"; }
.tp-acc__panel{ display:none; padding:0 0 22px; font-size:16px; line-height:1.72; color:#3c4954; }
.tp-acc__item.is-open .tp-acc__panel{ display:block; }
.tp-acc__panel p{ margin:0 0 12px; }

.tp-prose{ max-width:840px; margin:0 auto; text-align:left; }
.tp-prose h2{ font-size:28px; margin:40px 0 12px; color:var(--tp-ink); }
.tp-prose h3{ font-size:20px; margin:26px 0 10px; }
.tp-prose p{ font-size:17px; line-height:1.78; margin:0 0 15px; color:#3c4954; }
.tp-prose ul,.tp-prose ol{ margin:0 0 18px 22px; font-size:17px; color:#3c4954; }
.tp-prose ul{ list-style:disc; } .tp-prose ol{ list-style:decimal; }
.tp-prose li{ margin-bottom:8px; line-height:1.68; }
.tp-prose table{ width:100%; border-collapse:collapse; margin:22px 0; font-size:16px; }
.tp-prose th,.tp-prose td{ border:1px solid #e6ded4; padding:12px 15px; text-align:left; vertical-align:top; }
.tp-prose th{ background:var(--tp-sand); font-weight:700; }

.tp-note{ background:#fdf4ee; border-left:4px solid var(--tp-warm); padding:18px 22px; margin:26px 0;
  font-size:16px; line-height:1.68; border-radius:0 6px 6px 0; }

.tp-form{ max-width:620px; text-align:left; }
.tp-form label{ display:block; font-size:15px; font-weight:600; margin-bottom:6px; }
.tp-form input,.tp-form select,.tp-form textarea{ width:100%; border:1px solid #ded5c9; border-radius:5px;
  padding:13px 14px; font-size:16px; margin-bottom:16px; font-family:inherit; background:#fff; }
.tp-form textarea{ min-height:150px; }
.tp-form .tp-check{ font-weight:400; font-size:14px; }
.tp-form .tp-check input{ width:auto; margin-right:8px; }
.tp-form-msg{ display:none; color:#2f7d3a; font-weight:600; margin-top:14px; }

.tp-info{ list-style:none; margin:0; padding:0; max-width:560px; }
.tp-info li{ padding:14px 0; border-bottom:1px solid #e6ded4; font-size:16px; }
.tp-info li strong{ display:block; font-size:12px; letter-spacing:.14em; text-transform:uppercase;
  color:#8a8276; margin-bottom:4px; }

/* lábléc */
.tp-footer{ background:var(--tp-ink); color:rgba(255,255,255,.82); padding:62px 0 26px; }
.tp-footer__top{ display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:40px; }
.tp-footer__logo{ max-width:200px; margin-bottom:18px; }
.tp-footer h3{ color:#fff; font-size:14px; letter-spacing:.16em; text-transform:uppercase; margin:0 0 14px; }
.tp-footer ul{ list-style:none; margin:0; padding:0; }
.tp-footer li{ margin-bottom:10px; }
.tp-footer a{ color:rgba(255,255,255,.82); text-decoration:none; font-size:15.5px; }
.tp-footer a:hover{ color:var(--tp-amber); }
.tp-footer p{ font-size:15.5px; line-height:1.7; }
.tp-footer__bottom{ border-top:1px solid rgba(255,255,255,.15); margin-top:44px; padding-top:22px;
  display:flex; justify-content:space-between; gap:18px; flex-wrap:wrap; font-size:14px; }

@media (max-width:989px){
  .tp-gallery{ grid-template-columns:1fr 1fr; }
  .tp-footer__top{ grid-template-columns:1fr 1fr; }
}
@media (max-width:749px){
  .tp-split,.tp-cols3,.tp-quotes{ grid-template-columns:1fr; gap:26px; }
  .tp-strip__inner{ grid-template-columns:1fr 1fr; }
  .tp-split--rev .tp-split__media{ order:0; }
  .tp-hero h1{ font-size:31px; } .tp-hero{ min-height:440px; }
  .tp-hero__inner{ margin-left:0; }
  .tp-h1{ font-size:30px; } .tp-h2{ font-size:25px; }
  .tp-footer__top{ grid-template-columns:1fr; gap:28px; }
}

/* mobilné menu bez pôvodného JS témy */
.mobile-nav-wrapper{ position:static !important; top:auto !important; transform:none !important;
  max-height:none !important; overflow:visible !important; }
.mobile-nav{ list-style:none; margin:0; padding:0; }
.mobile-nav__link{ display:block; padding:14px 22px; font-size:17px; color:var(--tp-ink) !important;
  border-bottom:1px solid #ece4da; text-decoration:none; }
.mobile-nav__link:hover{ color:var(--tp-warm) !important; }

/* informačné panely namiesto fotografií produktu */
.tp-facts{ background:#fff; border:1px solid #e6ded4; border-radius:6px; overflow:hidden; }
.tp-facts__head{ background:var(--tp-ink); color:#fff; font-size:13px; letter-spacing:.16em;
  text-transform:uppercase; padding:16px 22px; font-weight:700; }
.tp-facts ul{ list-style:none; margin:0; padding:0; }
.tp-facts li{ padding:17px 22px; border-bottom:1px solid #f0e9e0; }
.tp-facts li:last-child{ border-bottom:0; }
.tp-facts li b{ display:block; font-size:16.5px; color:var(--tp-ink); margin-bottom:3px; }
.tp-facts li span{ font-size:14.5px; color:var(--tp-muted); }
.tp-facts--lg li{ padding:19px 24px; }
.tp-section--light .tp-facts{ background:#fff; }

/* karty balení bez fotografie */
.tp-card__top{ background:var(--tp-sand); color:var(--tp-warm); font-size:15px; font-weight:700;
  letter-spacing:.18em; text-transform:uppercase; padding:26px 20px; text-align:center;
  border-bottom:1px solid #ece4da; }
.tp-cookie{position:fixed;left:0;right:0;bottom:0;z-index:9999;background:#2b1f16;color:#f6efe7;box-shadow:0 -2px 16px rgba(0,0,0,.2)}
.tp-cookie__in{max-width:1080px;margin:0 auto;padding:1rem 1.25rem;display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between}
.tp-cookie__t{flex:1 1 24rem;font-size:.9rem;line-height:1.55}.tp-cookie__t a{color:#ffcf9a}
.tp-cookie__a{display:flex;gap:.6rem;flex-wrap:wrap}
.tp-cookie__b{background:#fff;color:#2b1f16;border:1px solid #fff;border-radius:6px;padding:.6rem 1rem;font:inherit;font-weight:600;cursor:pointer}
.tp-cookie__b:hover{background:#ece0d2;border-color:#ece0d2}
.tp-datacheck{background:#fff;border:1px solid #e6dccf;border-left:4px solid #c0703a;border-radius:8px;padding:1.25rem 1.5rem;margin:0 0 1.75rem}
.tp-datacheck[hidden]{display:none}.tp-datacheck h2{margin-top:0;font-size:1.15rem}
.tp-dc-row{display:flex;flex-wrap:wrap;gap:.25rem 1rem;padding:.6rem 0;border-top:1px solid #f1e9df}
.tp-dc-row[hidden]{display:none}.tp-dc-row dt{flex:0 0 9rem;font-size:.8rem;color:#7c6f63;margin:0}.tp-dc-row dd{margin:0;font-weight:700;overflow-wrap:anywhere}
.tp-dc-back{background:#c0703a;color:#fff;border:0;border-radius:6px;padding:.7rem 1.2rem;font:inherit;font-weight:600;cursor:pointer}
.tp-dc-back:hover{background:#a35c2c}
