:root{
  --st-container: 1200px;
  --st-accent: #f6b21a;
  --st-text: #ffffff;
  --st-topbar-bg: rgba(0,0,0,.35);
  --st-hero-overlay: rgba(0,0,0,.40);
  --st-bottomnav-bg: rgba(15,15,15,.92);
}

*{ box-sizing:border-box; }
body{ margin:0; }
.st-container{ width:min(var(--st-container), calc(100% - 32px)); margin:0 auto; }

.st-header{
  position: fixed;
  inset: 0 0 auto 0;
  z-index: 9999;
  color: var(--st-text);
}

.st-topbar{
  background: var(--st-topbar-bg);
  backdrop-filter: blur(6px);
}
.st-topbar__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding: 10px 0;
  font-size: 14px;
}
.st-topbar__left{
  display:flex;
  gap:22px;
  flex-wrap:wrap;
  align-items:center;
}
.st-topbar__item{
  color:#fff;
  text-decoration:none;
  opacity:.98;
  font-weight:600;
  display:flex;
  align-items:center;
  gap:6px;
  white-space:nowrap;
}
.st-topbar__item strong{ font-weight:800; }
.st-topbar__txt{ opacity:.9; }
.st-ic{
  font-size:18px;
  color: var(--st-accent);
  display:inline-flex;
  align-items:center;
}
.st-topbar__right{ display:flex; gap:10px; align-items:center; }
.st-lang{
  color:#fff;
  text-decoration:none;
  opacity:.85;
  font-weight:700;
}
.st-lang.is-active{ opacity:1; text-decoration: underline; }

/* Main pushes below fixed topbar */
.st-main{ padding-top: 48px; }

/* HERO */
.st-hero{
  position: relative;
  min-height: 88vh;
  display:flex;
  align-items:center;
  justify-content:center;
  background-size: cover;
  background-position: center;
  padding-bottom: 86px; /* space for bottom menu */
}
.st-hero__overlay{ position:absolute; inset:0; background: var(--st-hero-overlay); }
.st-hero__inner{
  position: relative;
  z-index: 2;
  text-align:center;
  padding: 110px 0 160px; /* similar to screenshot */
}
.st-hero__brand img{
  height: 72px;
  width:auto;
  margin-bottom: 18px;
  filter: drop-shadow(0 10px 24px rgba(0,0,0,.35));
}
.st-hero__title{
  color:#fff;
  font-size: clamp(28px, 4vw, 56px);
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .02em;
  margin: 0 0 26px;
  text-shadow: 0 10px 30px rgba(0,0,0,.35);
}
.st-btn{
  display:inline-block;
  background: var(--st-accent);
  color:#111;
  text-decoration:none;
  font-weight: 900;
  padding: 14px 28px;
  border-radius: 2px;
  letter-spacing:.04em;
  text-transform: uppercase;
  box-shadow: 0 10px 18px rgba(0,0,0,.18);
}
.st-btn:hover{ filter: brightness(.96); }

/* Offer box - centered above bottom menu */
.st-offer{
  position:absolute;
  left:50%;
  transform: translateX(-50%);
  bottom: 86px; /* sits above bottomnav */
  z-index: 3;
  width: min(860px, calc(100% - 32px));
}
.st-offer__inner{
  background: rgba(0,0,0,.55);
  padding: 18px 22px;
  text-align:center;
  border-radius: 2px;
  box-shadow: 0 10px 30px rgba(0,0,0,.25);
}
.st-offer__label{
  color:#ff2b2b;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing:.05em;
}
.st-offer__text{
  color:#fff;
  font-size: 20px;
  font-weight: 700;
  margin-top: 6px;
}

/* Bottom menu bar inside hero */
.st-bottomnav{
  position:absolute;
  left:0; right:0; bottom:0;
  z-index: 4;
  background: var(--st-bottomnav-bg);
  border-top: 1px solid rgba(255,255,255,.08);
}
.st-bottomnav__inner{
  display:flex;
  align-items:center;
  justify-content:center;
  padding: 18px 0;
  position: relative;
}

.st-menu__list{
  list-style:none;
  display:flex;
  gap:28px;
  margin:0;
  padding:0;
  justify-content:center;
  flex-wrap:wrap;
}
.st-menu__list a{
  color:#fff;
  text-decoration:none;
  font-weight:800;
  letter-spacing:.02em;
  text-transform: uppercase;
  font-size: 13.5px;
  opacity:.96;
}
.st-menu__list a:hover{ color: var(--st-accent); }
.st-menu__list .current-menu-item > a,
.st-menu__list .current_page_item > a{ color: var(--st-accent); }

/* Burger (mobile) */
.st-burger{
  display:none;
  position:absolute;
  right:0;
  top:50%;
  transform: translateY(-50%);
  width:44px; height:44px;
  background: transparent;
  border:0;
  cursor:pointer;
}
.st-burger span{
  display:block;
  height:2px;
  margin:7px 0;
  background:#fff;
}

/* Content */
.st-content{ background:#fff; padding: 40px 0; }

/* Responsive */
@media (max-width: 980px){
  .st-topbar__left{ display:none; } /* as in many designs */
  .st-main{ padding-top: 44px; }
  .st-hero__inner{ padding: 96px 0 150px; }
  .st-offer__text{ font-size: 18px; }
  .st-burger{ display:block; }
  .st-menu{ display:none; width:100%; }
  .st-bottomnav__inner{ justify-content:flex-start; }
}

/* Mobile menu opened */
.st-bottomnav.is-open .st-menu{
  display:block;
  padding: 10px 0 0;
}
.st-bottomnav.is-open .st-menu__list{
  flex-direction: column;
  gap: 0;
}
.st-bottomnav.is-open .st-menu__list a{
  display:block;
  padding: 14px 0;
  border-top: 1px solid rgba(255,255,255,.08);
}
/* ===== ONE PAGE: SEKCIA SLUŽBY ===== */

.st-section{
  padding: 90px 0;
  background: #2b2b2b; /* ako na screenshote */
  color: #fff;
}

.st-section-head{
  text-align: center;
  margin-bottom: 55px;
}

.st-section-head h2{
  margin: 0;
  font-size: 44px;
  letter-spacing: .06em;
  font-weight: 900;
  text-transform: uppercase;
}

.st-section-line{
  display: inline-block;
  width: 44px;
  height: 3px;
  background: var(--st-accent, #f6b21a);
  margin-top: 14px;
}

.st-services-grid{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 34px;
  align-items: start;
}

.st-service{
  text-align: center;
  padding: 10px 8px;
}

.st-service-ic{
  width: 64px;
  height: 64px;
  margin: 0 auto 18px;
  display: grid;
  place-items: center;
}

.st-service-ic svg{
  width: 52px;
  height: 52px;
  fill: var(--st-accent, #f6b21a);
}

.st-service h3{
  margin: 0 0 14px;
  font-size: 18px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .03em;
  line-height: 1.25;
}

.st-service p{
  margin: 0 auto;
  max-width: 280px;
  color: rgba(255,255,255,.65);
  font-size: 14px;
  line-height: 1.9;
}

/* Responsive */
@media (max-width: 1100px){
  .st-services-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .st-service p{ max-width: 360px; }
}

@media (max-width: 640px){
  .st-section{ padding: 70px 0; }
  .st-section-head h2{ font-size: 34px; }
  .st-services-grid{ grid-template-columns: 1fr; gap: 28px; }
}

/* ===== HOTNEWS ===== */
.st-hotnews { background:#1f1f1f; }
.st-hotnews .st-section-head h2{
  font-size: 28px;
  line-height: 1.25;
}
.st-hotnews-sub{
  margin-top: 10px;
  font-size: 34px;
  font-weight: 900;
  text-align:center;
}
.st-city-grid{
  margin-top: 28px;
  display:grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 22px;
}
.st-city{
  position:relative;
  display:block;
  text-decoration:none;
  color:#fff;
}
.st-city img{
  width:100%;
  height:240px;
  object-fit:cover;
  display:block;
}
.st-city__panel{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  bottom:-26px;
  width: 75%;
  background:#3a3a3a;
  border: 1px solid rgba(255,255,255,.18);
  padding: 22px 16px;
  text-align:center;
}
.st-city__title{
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.03em;
  line-height:1.2;
}
.st-city__price{
  margin-top:10px;
  color: var(--st-accent,#f6b21a);
  font-weight:900;
  text-transform:uppercase;
}
.st-block-title{
  margin-top: 70px;
  text-align:center;
}
.st-block-title h3{
  margin:0;
  font-size: 34px;
  font-weight: 900;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.st-table-wrap{ margin-top: 22px; overflow:auto; }
.st-table{
  width:100%;
  border-collapse: collapse;
  min-width: 980px;
}
.st-table th{
  background: var(--st-accent,#f6b21a);
  color:#fff;
  padding: 16px 12px;
  text-align:center;
  font-weight:900;
}
.st-table td{
  padding: 18px 12px;
  text-align:center;
  color: rgba(255,255,255,.75);
  border-right: 1px solid rgba(255,255,255,.08);
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.st-table tr:nth-child(even) td{
  background: rgba(255,255,255,.06);
}

.st-btn--small{ padding: 12px 18px; font-size: 12px; }
.st-btn--outline{
  background: transparent;
  color:#fff;
  border: 2px solid var(--st-accent,#f6b21a);
}
.st-hotnews-bottom{
  margin-top: 22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.st-hotnews-note{ color: rgba(255,255,255,.75); }

/* ===== MODAL ===== */
.st-modal{
  position:fixed;
  inset:0;
  display:none;
  z-index: 999999;
}
.st-modal.is-open{ display:block; }
.st-modal__overlay{
  position:absolute;
  inset:0;
  background: rgba(0,0,0,.65);
}
.st-modal__panel{
  position:relative;
  width: min(980px, calc(100% - 24px));
  margin: 60px auto;
  background:#2b2b2b;
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 20px 60px rgba(0,0,0,.4);
  padding: 26px;
}
.st-modal__close{
  position:absolute;
  top:10px;
  right:12px;
  width: 40px;
  height: 40px;
  background: transparent;
  border:0;
  color:#fff;
  font-size: 28px;
  cursor:pointer;
}
.st-modal__title{
  margin: 0 0 18px;
  font-size: 22px;
  font-weight: 900;
  color:#fff;
}

.st-form{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px 18px;
}
.st-form__row{ display:flex; flex-direction:column; gap:8px; }
.st-form__row--full{ grid-column: 1 / -1; }
.st-form label{ color:#fff; font-weight:700; font-size: 13px; }
.st-form input, .st-form select, .st-form textarea{
  background: transparent;
  border: 0;
  border-bottom: 2px solid rgba(246,178,26,.65);
  padding: 10px 6px;
  color:#fff;
  outline:none;
}
.st-form input:focus, .st-form select:focus, .st-form textarea:focus{
  border-bottom-color: var(--st-accent,#f6b21a);
}
.st-form select option{ color:#000; }
.st-form__checkbox label{ font-weight:600; display:flex; gap:10px; align-items:center; }
.st-form__checkbox input{ width:16px; height:16px; }

.st-form__actions{
  grid-column: 1 / -1;
  display:flex;
  justify-content:center;
  gap: 16px;
  margin-top: 6px;
}
.st-btn--ghost{
  background: transparent;
  color:#fff;
  border: 2px solid rgba(246,178,26,.65);
}
.st-form__msg{
  grid-column: 1 / -1;
  margin-top: 8px;
  font-weight:700;
}

/* Responsive */
@media (max-width: 1100px){
  .st-city-grid{ grid-template-columns: repeat(2, 1fr); }
  .st-city img{ height: 220px; }
}
@media (max-width: 720px){
  .st-hotnews-sub{ font-size: 24px; }
  .st-city-grid{ grid-template-columns: 1fr; }
  .st-city__panel{ width: 86%; }
  .st-form{ grid-template-columns: 1fr; }
  .st-hotnews-bottom{ flex-direction:column; align-items:flex-start; }
}

/* ===== TOPBAR ===== */
.st-topbar{
  background: rgba(0,0,0,.35);
  backdrop-filter: blur(6px);
}
.st-topbar__inner{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  padding: 10px 0;
  font-size: 14px;
}
.st-topbar__left{
  display:flex;
  flex-wrap:wrap;
  gap:18px;
  align-items:center;
}
.st-topbar__item{
  color:#fff;
  text-decoration:none;
  opacity:.95;
  font-weight:600;
}
.st-topbar__item strong{ font-weight:900; }
.st-topbar__txt{ opacity:.85; margin-right:6px; }
.st-ic{
  margin-right:8px;
  color: var(--st-accent, #f6b21a);
  font-size:18px;
}
.st-topbar__right{ display:flex; gap:10px; }
.st-lang{ color:#fff; text-decoration:none; opacity:.8; font-weight:800; }
.st-lang.is-active{ opacity:1; text-decoration:underline; }

/* Mobile: zjednoduši topbar */
@media (max-width: 920px){
  .st-topbar__left{ display:none; }
}

/* ===== HOTNEWS HEADINGS VISIBILITY ===== */
.st-hotnews .st-section-head h2{
  color:#fff !important;
  opacity:1 !important;
}
.st-hotnews .st-hotnews-sub{
  color:#fff !important;
}
.st-block-title h3{
  color:#fff !important;
  opacity:1 !important;
}

/* ===== BUTTON STATES ===== */
.st-btn,
button.st-btn{
  outline: none;
  box-shadow: none;
  -webkit-tap-highlight-color: transparent;
}

.st-btn:hover{
  background: transparent !important;
  color: var(--st-accent, #f6b21a) !important;
  border: 2px solid var(--st-accent, #f6b21a) !important;
  filter: none !important;
}

.st-btn:focus,
.st-btn:active,
.st-btn:focus-visible{
  outline: none !important;
  box-shadow: none !important;
}
.st-btn:focus-visible{
  box-shadow: 0 0 0 3px rgba(246,178,26,.25) !important;
}

/* ===== WHY (PREČO PRÁVE MY) ===== */
.st-why{
  background:#2b2b2b;
}
.st-why .st-section-head h2{
  font-size: 44px;
}
.st-why-sub{
  margin-top:10px;
  color: rgba(255,255,255,.65);
  text-align:center;
  font-size: 15px;
}
.st-why-grid{
  margin-top: 46px;
  display:grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 34px;
  align-items:start;
}
.st-why-item{
  text-align:center;
  padding: 10px 8px;
}
.st-why-ic{
  width: 64px;
  height: 64px;
  margin: 0 auto 18px;
  display:grid;
  place-items:center;
}
.st-why-ic svg{
  width: 52px;
  height: 52px;
  fill: var(--st-accent,#f6b21a);
}
.st-why-item h3{
  margin: 0 0 14px;
  font-size: 16px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .03em;
}
.st-why-item p{
  margin: 0 auto;
  max-width: 280px;
  color: rgba(255,255,255,.65);
  line-height: 1.9;
  font-size: 14px;
}

/* ===== KONTAKT ===== */
.st-contact{
  background:#1f1f1f;
}
.st-contact-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 34px;
}
.st-section-head--left{
  text-align:left;
  margin-bottom:18px;
}
.st-contact-item{
  display:flex;
  gap:14px;
  align-items:flex-start;
  padding: 14px 0;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.st-contact-ic{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  color: var(--st-accent,#f6b21a);
  font-size:20px;
  border:1px solid rgba(255,255,255,.12);
}
.muted{ color: rgba(255,255,255,.65); }
.strong{ color:#fff; font-weight:900; margin-top:4px; }

.st-msgform-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.st-msgform-grid .full{ grid-column: 1 / -1; }
.st-msgform input, .st-msgform textarea{
  background: transparent;
  border:0;
  border-bottom:2px solid rgba(246,178,26,.65);
  color:#fff;
  padding: 10px 6px;
  outline:none;
}
.st-msgform input:focus, .st-msgform textarea:focus{
  border-bottom-color: var(--st-accent,#f6b21a);
}

/* responsive */
@media (max-width: 1100px){
  .st-why-grid{ grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 820px){
  .st-why .st-section-head h2{ font-size: 34px; }
  .st-why-grid{ grid-template-columns: 1fr; }
  .st-contact-grid{ grid-template-columns: 1fr; }
  .st-msgform-grid{ grid-template-columns: 1fr; }
}

h1, h2, h3, h4, h5, h6, .entry-content :where(h1,h2,h3,h4,h5,h6) {
    color: #ffffff;
}

/* =========================
   MODERN SECTION SEPARATORS
   ========================= */

/* Paleta pozadí (stále dark, ale striedané a živšie) */
:root{
  --st-bg-1: #0e1016;
  --st-bg-2: #121622;
  --st-bg-3: #0c0f14;
  --st-bg-4: #10131b;

  --st-glow-a: rgba(246,178,26,.18); /* accent glow */
  --st-glow-b: rgba(255,255,255,.06); /* soft light */
}

/* Každá sekcia nech je "layered" */
.st-section,
.st-content{
  position: relative;
  overflow: hidden;
}

/* Jemný moderný “glow” v rohoch (oživí bez kriku) */
.st-section::before,
.st-content::before{
  content:"";
  position:absolute;
  inset:-2px;
  pointer-events:none;
  background:
    radial-gradient(900px 340px at 12% 10%, var(--st-glow-a), transparent 60%),
    radial-gradient(700px 320px at 88% 22%, var(--st-glow-b), transparent 55%),
    radial-gradient(900px 360px at 50% 110%, rgba(246,178,26,.08), transparent 60%);
  opacity: .9;
  z-index: 0;
}

/* Obsah sekcie nad glows */
.st-section > .st-container,
.st-content > .st-container{
  position: relative;
  z-index: 1;
}

/* Šikmý prechod medzi sekciami (sekčný separator) */
.st-section::after,
.st-content::after{
  content:"";
  position:absolute;
  left:0; right:0;
  bottom:-1px;
  height:72px;
  pointer-events:none;
  background: linear-gradient(180deg, rgba(0,0,0,0), rgba(0,0,0,.35));
  transform: skewY(-2deg);
  transform-origin: 100% 0;
  z-index: 0;
  opacity: .75;
}

/* ===============
   STRIEDANIE BACKGROUNDOV
   =============== */

/* SLUŽBY */
.st-services{
  background: linear-gradient(180deg, var(--st-bg-1), var(--st-bg-2));
}

/* HOTNEWS */
.st-hotnews{
  background: linear-gradient(180deg, var(--st-bg-2), var(--st-bg-3));
}

/* PREČO PRÁVE MY */
.st-why{
  background: linear-gradient(180deg, var(--st-bg-3), var(--st-bg-4));
}

/* KONTAKT */
.st-contact{
  background: linear-gradient(180deg, #0b0d12, #0f121a);
}

/* REZERVÁCIA / CONTENT – nech je trošku “čistejšia” sekcia,
   stále však ladí s dark dizajnom */
.st-content{
  background: linear-gradient(180deg, #f7f7f9, #efeff4);
}

/* =========================
   FARBY NADPISOV – DÔLEŽITÉ!
   Teraz máš globálne nastavené, že všetky h1-h6 sú biele.
   To na svetlom .st-content vyzerá zle, tak to prepíšeme.
   ========================= */

/* Nadpisy v dark sekciách biele */
.st-section h1, .st-section h2, .st-section h3, .st-section h4, .st-section h5, .st-section h6,
.st-section .entry-content :where(h1,h2,h3,h4,h5,h6){
  color:#fff;
}

/* Nadpisy v svetlej sekcii tmavé */
.st-content h1, .st-content h2, .st-content h3, .st-content h4, .st-content h5, .st-content h6,
.st-content .entry-content :where(h1,h2,h3,h4,h5,h6){
  color:#111;
}

/* Text v .st-content tmavší */
.st-content,
.st-content p,
.st-content .entry-content{
  color:#222;
}

/* Bonus: jemne modernejší “panel” efekt na karty v službách/why */
.st-service,
.st-why-item{
  border: 1px solid rgba(255,255,255,.06);
  background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
  border-radius: 10px;
  padding: 18px 14px;
  box-shadow: 0 18px 40px rgba(0,0,0,.25);
}

@media (max-width: 640px){
  .st-section::after,
  .st-content::after{ height:52px; }
}
/* =========================================================
   MODERN DARK PRODUCT PAGE (match your homepage style)
   Applies ONLY on Woo single product pages
   Accent: #f6b21a, hard edges, glass panels
   ========================================================= */

body.single-product{
  background: radial-gradient(1200px 600px at 20% 10%, rgba(246,178,26,.14), transparent 60%),
              radial-gradient(900px 500px at 90% 20%, rgba(246,178,26,.08), transparent 55%),
              linear-gradient(180deg, #101010, #0b0b0b 65%, #090909);
  color: #fff;
}

/* make content centered and not stretched */
body.single-product .site-main,
body.single-product .content-area{
  max-width: 1280px;
  margin: 0 auto;
  padding: 28px 18px 60px;
}

/* Woo wrapper spacing */
body.single-product .product{
  margin: 0;
}

/* ============ TOP HERO LAYOUT (image left, info right) ============ */
body.single-product .woocommerce div.product{
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 22px;
  align-items: start;
}

@media (max-width: 980px){
  body.single-product .woocommerce div.product{
    grid-template-columns: 1fr;
  }
}

/* Gallery as a clean card */
body.single-product .woocommerce-product-gallery{
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 2px;
  box-shadow: 0 18px 45px rgba(0,0,0,.35);
  overflow: hidden;
  padding: 12px;
}

body.single-product .woocommerce-product-gallery img{
  border-radius: 2px;
}

/* Summary card (right side) */
body.single-product .summary{
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 2px;
  box-shadow: 0 18px 45px rgba(0,0,0,.35);
  padding: 18px 18px 16px;
  position: sticky;
  top: 18px;
}

/* Title typography */
body.single-product .product_title{
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .05em;
  font-size: 26px;
  line-height: 1.2;
  margin-bottom: 10px;
}

/* Breadcrumbs & meta cleaner */
body.single-product .woocommerce-breadcrumb{ display:none; }
body.single-product .product_meta{ display:none; }

/* Price styling */
body.single-product .price{
  font-size: 28px;
  font-weight: 900;
  color: #fff;
}
body.single-product .price del{
  opacity: .5;
  font-weight: 700;
}
body.single-product .price ins{
  text-decoration: none;
  color: #fff;
}

/* Short description */
body.single-product .woocommerce-product-details__short-description{
  color: rgba(255,255,255,.78);
  line-height: 1.7;
  margin: 10px 0 14px;
}

/* ============ BOOKING FIELDS + BUTTONS ============ */
.wc-trip-booking-fields{
  max-width: 100%;
  margin-top: 12px;
  gap: 14px;
}

.wc-trip-field label{
  color:#fff;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .05em;
  font-size: 12px;
}

/* inputs like your homepage */
.wc-trip-field select,
.wc-trip-field input[type="date"]{
  width: 100%;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 2px solid rgba(246,178,26,.55) !important;
  border-radius: 0 !important;
  color: #fff !important;
  padding: 10px 6px !important;
  outline: none !important;
}

.wc-trip-field select:focus,
.wc-trip-field input[type="date"]:focus{
  border-bottom-color: #f6b21a !important;
}

.wc-trip-field input[type="date"]::-webkit-calendar-picker-indicator{
  filter: invert(1);
  opacity: .85;
}

.wc-trip-hint{
  color: rgba(255,255,255,.60);
  font-weight: 600;
  margin: 6px 0 14px;
}

/* quantity box hide or compact (we don't need qty because we use travellers) */
body.single-product form.cart .quantity{
  display:none !important;
}

/* Add to cart button – sexy */
body.single-product .single_add_to_cart_button{
  width: 100%;
  border-radius: 2px !important;
  border: 1px solid rgba(246,178,26,.45) !important;
  background: linear-gradient(180deg, rgba(246,178,26,.22), rgba(246,178,26,.10)) !important;
  color: #fff !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .06em !important;
  padding: 14px 16px !important;
  box-shadow: 0 14px 35px rgba(0,0,0,.35);
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}

body.single-product .single_add_to_cart_button:hover{
  transform: translateY(-1px);
  border-color: rgba(246,178,26,.75) !important;
  background: linear-gradient(180deg, rgba(246,178,26,.30), rgba(246,178,26,.12)) !important;
}

/* ============ BELOW HERO: make your sections full-width + aligned ============ */
.wc-trip-wrap{
  grid-column: 1 / -1;
  margin-top: 26px;
}

/* kill stretched grey blocks (if any old css applied) */
.wc-trip-wrap,
.wc-trip-quick,
.wc-trip-itinerary,
.wc-trip-map,
.wc-trip-sections{
  background: transparent;
}

/* Section cards like your homepage service cards */
.wc-trip-quick,
.wc-trip-itinerary,
.wc-trip-map,
.wc-trip-sections{
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 2px !important;
  box-shadow: 0 18px 45px rgba(0,0,0,.35);
  padding: 18px !important;
}

/* Titles like “SLUŽBY” */
.wc-trip-wrap h3{
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
  margin: 0 0 14px;
}

/* 2-column for itinerary + map like a proper section */
.wc-trip-itinerary-grid{
  display:grid;
  grid-template-columns: 1.2fr .8fr;
  gap: 18px;
  align-items: start;
}

@media (max-width: 980px){
  .wc-trip-itinerary-grid{ grid-template-columns: 1fr; }
}

/* Timeline “cards” */
.wc-trip-timeline{ list-style:none !important; padding-left:0 !important; margin: 0; }
.wc-trip-step{ padding: 12px 0; }
.wc-trip-step:before{
  left: 16px;
  background: rgba(255,255,255,.10);
}
.wc-trip-marker{
  border-radius: 2px;
  background: rgba(246,178,26,.10);
  border: 1px solid rgba(246,178,26,.22);
}
.wc-trip-step.type-drive .wc-trip-marker{ background: rgba(246,178,26,.18); }
.wc-trip-step.type-stop  .wc-trip-marker{ background: rgba(255,255,255,.07); border-color: rgba(255,255,255,.14); }
.wc-trip-step.type-start .wc-trip-marker{ background: rgba(246,178,26,.22); }
.wc-trip-step.type-end   .wc-trip-marker{ background: rgba(255,255,255,.10); border-color: rgba(255,255,255,.16); }

.wc-trip-step-body{
  background: rgba(0,0,0,.35);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 2px;
  padding: 14px 16px;
}

.wc-trip-step-title{
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.wc-trip-step-dur{
  font-weight: 900;
  color: rgba(255,255,255,.85);
  background: rgba(246,178,26,.12);
  border: 1px solid rgba(246,178,26,.25);
  padding: 4px 10px;
  border-radius: 2px;
}

.wc-trip-bullets{
  list-style:none;
  padding-left:0;
  margin: 10px 0 0;
  display:grid;
  gap: 7px;
}
.wc-trip-bullets li{
  position: relative;
  padding-left: 18px;
  color: rgba(255,255,255,.78);
}
.wc-trip-bullets li:before{
  content: "•";
  position: absolute;
  left: 6px;
  top: 0;
  color: #f6b21a;
  font-weight: 900;
}

/* Map embed nicer */
.wc-trip-map-embed iframe{
  width: 100%;
  min-height: 360px;
  border-radius: 2px;
  border: 1px solid rgba(255,255,255,.12);
}

/* Sections: make them look like modern blocks (not long stretched) */
.wc-trip-sections{
  margin-top: 18px;
}

/* section separators */
.wc-trip-section{
  padding: 18px 0;
  border-top: 1px solid rgba(255,255,255,.10);
}
.wc-trip-section:first-child{ border-top:0; padding-top: 0; }

/* included/excluded list */
.wc-trip-included{
  margin:0; padding:0; list-style:none;
  display:grid; gap: 10px;
}
.wc-trip-included li{
  background: rgba(0,0,0,.30);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 2px;
  padding: 10px 12px;
  display:grid;
  grid-template-columns: 26px 1fr;
  gap: 10px;
}
.wc-trip-included .mark{
  border-radius: 2px;
  border: 1px solid rgba(255,255,255,.14);
  display:grid; place-items:center;
  font-weight: 900;
}
.wc-trip-included li.in .mark{
  background: rgba(246,178,26,.14);
  border-color: rgba(246,178,26,.28);
  color: #f6b21a;
}
.wc-trip-included li.out .mark{
  background: rgba(255,43,43,.12);
  border-color: rgba(255,43,43,.28);
  color: #ff2b2b;
}

/* Important info cards */
.wc-trip-info-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-top: 12px;
}
@media (max-width: 980px){
  .wc-trip-info-grid{ grid-template-columns: 1fr; }
}
.wc-trip-info-card{
  background: rgba(0,0,0,.32);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 2px;
  padding: 14px 14px 12px;
}
.wc-trip-info-card h4{
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .05em;
  margin: 0 0 10px;
}

/* Hide Woo default tabs (Opis/Recenzie) because we already render “Úplný opis” */
body.single-product .woocommerce-tabs{
  display:none !important;
}

/* =========================================================
   PATCH: FIX centering + no overlap + nice mobile
   (paste AFTER your current product-page CSS)
   ========================================================= */

/* 1) Robust layout: flex instead of grid (themes with floats won't break it) */
body.single-product .woocommerce div.product{
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 22px !important;
  align-items: flex-start !important;
}

/* Gallery left, summary right */
body.single-product .woocommerce-product-gallery{
  flex: 1 1 540px !important;
  min-width: 320px !important;
}

body.single-product .summary{
  flex: 0 1 460px !important;
  min-width: 320px !important;
  max-width: 520px !important;

  /* 2) STOP OVERLAY: sticky OFF (this is what was covering itinerary/map) */
  position: relative !important;
  top: auto !important;
  z-index: 1 !important;
}

/* 3) Make all trip sections full width under the hero */
.wc-trip-wrap{
  flex: 1 1 100% !important;
  width: 100% !important;
  max-width: 1280px !important;
  margin: 26px auto 0 !important;
  grid-column: auto !important; /* in case grid rules still apply */
}

/* 4) Center & contain the whole page nicely */
body.single-product .site-main,
body.single-product .content-area{
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 28px 18px 60px !important;
}

/* 5) Itinerary + map: keep them aligned and never overlap */
.wc-trip-itinerary-grid{
  width: 100% !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
}

/* 6) Mobile: stack everything, reduce padding, full width */
@media (max-width: 980px){
  body.single-product .woocommerce-product-gallery,
  body.single-product .summary{
    flex: 1 1 100% !important;
    max-width: 100% !important;
  }

  /* map + itinerary stack */
  .wc-trip-itinerary-grid{
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  /* smaller paddings on cards */
  body.single-product .woocommerce-product-gallery,
  body.single-product .summary,
  .wc-trip-quick,
  .wc-trip-itinerary,
  .wc-trip-map,
  .wc-trip-sections{
    padding: 14px !important;
  }

  /* big title a bit smaller */
  body.single-product .product_title{
    font-size: 22px !important;
  }
}

/* 7) Prevent any weird horizontal overflow */
body.single-product{
  overflow-x: hidden !important;
}

/* FIX: Prehľad – nikdy nechoď "slovo pod slovom" */
.wc-trip-quick{
  width: 100% !important;
  max-width: 100% !important;
}

.wc-trip-quick-list li{
  grid-template-columns: 26px 1fr !important; /* ikona + text */
  align-items: start;
}

/* text nech sa láme normálne */
.wc-trip-quick,
.wc-trip-quick *{
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
}

/* aby sa dlhšie popisy držali v odsekoch */
.wc-trip-quick-list li > div,
.wc-trip-quick .muted{
  display: block;
  line-height: 1.5;
}
/* PREHĽAD: text musí byť v 2. stĺpci, nie pod ikonou */
.wc-trip-quick-list li{ 
  display: grid !important;
  grid-template-columns: 26px 1fr !important;
  column-gap: 10px !important;
  row-gap: 2px !important;
}

.wc-trip-quick-list li .wc-trip-ico{ grid-column: 1 !important; grid-row: 1 / span 2 !important; }
.wc-trip-quick-list li strong{ grid-column: 2 !important; }
.wc-trip-quick-list li .muted{ grid-column: 2 !important; }

/* ===== VÝLETY / PRODUKTY ===== */
.st-trips{ background:#1f1f1f; }
.st-trips-sub{
  margin-top: 12px;
  color: rgba(255,255,255,.70);
  font-size: 16px;
  font-weight: 600;
}

.st-products-grid{
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 22px;
}

.st-product{
  display:block;
  text-decoration:none;
  color:#fff;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 2px;
  overflow:hidden;
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.st-product:hover{
  transform: translateY(-3px);
  border-color: rgba(246,178,26,.45);
  background: rgba(255,255,255,.06);
}

.st-product__img{
  height: 220px;
  background-size: cover;
  background-position: center;
}

.st-product__body{ padding: 16px 16px 18px; }
.st-product__title{
  margin: 0 0 12px;
  font-size: 16px;
  font-weight: 900;
  letter-spacing: .02em;
  text-transform: uppercase;
  line-height: 1.25;
}

.st-product__meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
}
.st-product__price{
  font-weight: 900;
  color: #fff;
}
.st-product__price del{ opacity:.55; }
.st-product__price ins{ text-decoration:none; }

.st-product__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 10px 14px;
  background: var(--st-accent);
  color:#111;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .03em;
  border-radius: 2px;
  white-space: nowrap;
}

.st-trips-more{
  margin-top: 26px;
  text-align:center;
}

.st-btn--ghost{
  background: transparent;
  color:#fff;
  border: 1px solid rgba(255,255,255,.22);
  box-shadow:none;
}
.st-btn--ghost:hover{
  border-color: rgba(246,178,26,.55);
  color: var(--st-accent);
}

@media (max-width: 1100px){
  .st-products-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 640px){
  .st-products-grid{ grid-template-columns: 1fr; }
  .st-product__img{ height: 200px; }
}


/* ===== ÚPRAVY FRONT PAGE (sekcie, hover, formulár, tlačidlá) ===== */

/* Jemnejšie oddelenie sekcií – nech sa "neprelínajú" */
.st-section{ position: relative; }
.st-section + .st-section{
  border-top: 1px solid rgba(255,255,255,.06);
}

/* Striedanie pozadí + jemné textúry */
.st-services{
  background:
    radial-gradient(900px 400px at 10% 10%, rgba(246,178,26,.12), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.02), rgba(0,0,0,.10)),
    #242424;
}
.st-why{
  background:
    radial-gradient(900px 500px at 90% 0%, rgba(246,178,26,.10), transparent 65%),
    linear-gradient(180deg, rgba(255,255,255,.01), rgba(0,0,0,.12)),
    #1f1f1f;
}
.st-contact{
  background:
    radial-gradient(700px 420px at 15% 30%, rgba(246,178,26,.10), transparent 70%),
    linear-gradient(180deg, rgba(255,255,255,.02), rgba(0,0,0,.12)),
    #242424;
}

/* Rezervačný obsah (Elementor / obsah stránky) nech nie je „biela stena“ */
.st-content{
  background: #1f1f1f;
  padding: 70px 0;
  border-top: 1px solid rgba(255,255,255,.06);
}
.st-content .st-container{
  background: rgba(0,0,0,.25);
  border: 1px solid rgba(255,255,255,.06);
  border-radius: 14px;
  padding: 28px;
  box-shadow: 0 18px 40px rgba(0,0,0,.28);
}

/* Globálne hover/focus farby (žiadna modrá) */
a:hover,
a:focus{ color: var(--st-accent) !important; }

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible{
  outline: 2px solid var(--st-accent);
  outline-offset: 3px;
}

/* Astra "scroll to top" šípka (vpravo dole) */
#ast-scroll-top{
  background: var(--st-accent) !important;
  color: #111 !important;
  border-radius: 4px !important;
}
#ast-scroll-top:hover{
  filter: brightness(.95);
  transform: translateY(-2px);
}

/* Elementor scroll top (ak je použité) */
.elementor-scroll-top,
.elementor-scroll-top-button{
  background: var(--st-accent) !important;
}
.elementor-scroll-top:hover,
.elementor-scroll-top-button:hover{
  filter: brightness(.95);
  transform: translateY(-2px);
}

/* Tlačidlá – plynulá animácia pri hover */
.st-btn,
button,
input[type="submit"],
.elementor-button{
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease, background-color .18s ease, border-color .18s ease, color .18s ease;
  will-change: transform;
}
.st-btn:hover,
button:hover,
input[type="submit"]:hover,
.elementor-button:hover{
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(0,0,0,.22);
}

/* Elementor button – žltá aj pri hover (override) */
.elementor-button,
.elementor a.elementor-button{
  background: var(--st-accent) !important;
  border-color: var(--st-accent) !important;
  color: #111 !important;
}
.elementor-button:hover,
.elementor a.elementor-button:hover{
  filter: brightness(.95);
}

/* Formulár "Napísať správu" – vycentrovanie a medzery */
.st-msgform{
  max-width: 760px;
  margin: 0 auto;
}
.st-msgform textarea{
  min-height: 140px;
}
.st-msgform button{
  display: block;
  margin: 22px auto 0;
}
.st-form__msg{
  text-align: center;
  margin-top: 14px;
}
/* FOOTER */
.st-footer{
  background:#111;
  color:#fff;
  padding:60px 0 25px;
}

.st-footer__grid{
  display:grid;
  grid-template-columns:1.1fr 0.9fr 1.2fr;
  gap:40px;
}

.st-footer__col h3{
  font-size:20px;
  margin-bottom:18px;
  color:#fff;
}

.st-footer__col p,
.st-footer__col li,
.st-footer__col a{
  color:rgba(255,255,255,.82);
  text-decoration:none;
  line-height:1.7;
}

.st-footer__menu{
  list-style:none;
  padding:0;
  margin:0;
}

.st-footer__menu li{
  margin-bottom:10px;
}

.st-footer__menu a:hover,
.st-footer__col a:hover{
  color:#f1b51c;
}

.st-footer__bottom{
  border-top:1px solid rgba(255,255,255,.12);
  margin-top:35px;
  padding-top:20px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  flex-wrap:wrap;
}

.st-footer__bottom p{
  margin:0;
  color:rgba(255,255,255,.7);
}

@media (max-width: 991px){
  .st-footer__grid{
    grid-template-columns:1fr;
  }

  .st-footer__bottom{
    flex-direction:column;
    align-items:flex-start;
  }
}
.woocommerce ul.products li.product .price, .woocommerce div.product p.price, .woocommerce div.product span.price, .widget_layered_nav_filters ul li.chosen a, .woocommerce-page ul.products li.product .ast-woo-product-category, .wc-layered-nav-rating a {
    color: #f6b21a;
}
a {
    color: #f6b21a;
}
[data-section="section-header-mobile-trigger"] .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg {
    width: 20px;
    height: 20px;
    fill: #f6b21a;
}

.wc-trip-field--people {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.wc-trip-field--people label {
  width: 100%;
  text-align: center;
  margin-bottom: 10px;
}

.wc-trip-people-stepper {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  width: 100%;
}

.wc-trip-stepper-btn:hover {
  transform: translateY(-1px);
}

.wc-trip-stepper-btn:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

.wc-trip-people-stepper input[type="number"] {
  width: 56px;
  height: 54px;
  padding: 0;
  text-align: center;
  font-size: 26px;
  font-weight: 800;
  background: transparent;
  color: #fff;
  border: none;
  box-shadow: none;
}

.wc-trip-people-stepper input[type="number"]::-webkit-outer-spin-button,
.wc-trip-people-stepper input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.wc-trip-people-stepper input[type="number"] {
  -moz-appearance: textfield;
  appearance: textfield;
}
button:focus, .menu-toggle:hover, button:hover, .ast-button:hover, .ast-custom-button:hover .button:hover, .ast-custom-button:hover, input[type=reset]:hover, input[type=reset]:focus, input#submit:hover, input#submit:focus, input[type="button"]:hover, input[type="button"]:focus, input[type="submit"]:hover, input[type="submit"]:focus, form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button:hover, form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button:focus, body .wp-block-file .wp-block-file__button:hover, body .wp-block-file .wp-block-file__button:focus, .woocommerce-js a.button:hover, .woocommerce button.button:hover, .woocommerce .woocommerce-message a.button:hover, .woocommerce #respond input#submit:hover, .woocommerce #respond input#submit.alt:hover, .woocommerce input.button.alt:hover, .woocommerce input.button:hover, .woocommerce button.button.alt.disabled:hover, .wc-block-grid__products .wc-block-grid__product .wp-block-button__link:hover, [CLASS*="wc-block"] button:hover, .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button:not(.checkout):not(.ast-continue-shopping):hover, .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons a.checkout:hover, .woocommerce button.button.alt.disabled.wc-variation-selection-needed:hover, [CLASS*="wc-block"] .wc-block-components-button:hover, [CLASS*="wc-block"] .wc-block-components-button:focus
Specificity: (0,4,0)
 {
    color: #ffffff;
    background-color: #ffc10700!important;
    border-color: #ffc10700!important;
}
button:focus, .menu-toggle:hover, button:hover, .ast-button:hover, .ast-custom-button:hover .button:hover, .ast-custom-button:hover, input[type=reset]:hover, input[type=reset]:focus, input#submit:hover, input#submit:focus, input[type="button"]:hover, input[type="button"]:focus, input[type="submit"]:hover, input[type="submit"]:focus, form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button:hover, form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button:focus, body .wp-block-file .wp-block-file__button:hover, body .wp-block-file .wp-block-file__button:focus, .woocommerce-js a.button:hover, .woocommerce button.button:hover, .woocommerce .woocommerce-message a.button:hover, .woocommerce #respond input#submit:hover, .woocommerce #respond input#submit.alt:hover, .woocommerce input.button.alt:hover, .woocommerce input.button:hover, .woocommerce button.button.alt.disabled:hover, .wc-block-grid__products .wc-block-grid__product .wp-block-button__link:hover, [CLASS*="wc-block"] button:hover, .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button:not(.checkout):not(.ast-continue-shopping):hover, .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons a.checkout:hover, .woocommerce button.button.alt.disabled.wc-variation-selection-needed:hover, [CLASS*="wc-block"] .wc-block-components-button:hover, [CLASS*="wc-block"] .wc-block-components-button:focus {
    color: #ffffff;
    background-color: #045cb400;
    border-color: var(--ast-global-color-1);
}
.pswp__img,
.pswp__zoom-wrap img,
.pswp img {
  opacity: 1 !important;
  visibility: visible !important;
  display: block !important;
  max-width: none !important;
}

.pswp__container,
.pswp__item,
.pswp__zoom-wrap {
  opacity: 1 !important;
  visibility: visible !important;
}
.st-lightbox{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.92);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  z-index:9999999;
  transition:.25s ease;
}

.st-lightbox.is-open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}

.st-lightbox__img{
  display:block;
  max-width:95vw;
  max-height:90vh;
  width:auto;
  height:auto;
  border-radius:8px;
}

.st-lightbox__close{
  position:absolute;
  top:18px;
  right:18px;
  width:46px;
  height:46px;
  border:none;
  border-radius:50%;
  background:rgba(255,255,255,.15);
  color:#fff;
  font-size:32px;
  line-height:1;
  cursor:pointer;
}

body.st-lightbox-open{
  overflow:hidden;
}

/* SHOP / CATEGORY PAGE */
.post-type-archive-product,
.tax-product_cat{
  background:
    radial-gradient(circle at top left, rgba(194,138,22,.14), transparent 28%),
    linear-gradient(180deg, #111 0%, #1b1b1f 100%);
  color:#fff;
}

.post-type-archive-product .site-content,
.tax-product_cat .site-content{
  padding-top:40px;
  padding-bottom:80px;
}

.post-type-archive-product .woocommerce-breadcrumb,
.tax-product_cat .woocommerce-breadcrumb,
.post-type-archive-product .woocommerce-result-count,
.tax-product_cat .woocommerce-result-count,
.post-type-archive-product .woocommerce-ordering,
.tax-product_cat .woocommerce-ordering{
  display:none;
}

.post-type-archive-product .woocommerce-products-header,
.tax-product_cat .woocommerce-products-header{
  text-align:center;
  margin-bottom:40px;
}

.post-type-archive-product .woocommerce-products-header__title,
.tax-product_cat .woocommerce-products-header__title{
  color:#fff;
  font-size:54px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.02em;
  margin-bottom:14px;
}

.post-type-archive-product .term-description,
.tax-product_cat .term-description{
  color:rgba(255,255,255,.78);
  max-width:760px;
  margin:0 auto 30px;
  font-size:20px;
  line-height:1.6;
}

.post-type-archive-product ul.products,
.tax-product_cat ul.products{
  display:grid !important;
  grid-template-columns:repeat(auto-fit, minmax(280px, 280px));
  justify-content:center;
  gap:34px;
  margin:0 !important;
  padding:0 !important;
}

.post-type-archive-product ul.products li.product,
.tax-product_cat ul.products li.product{
  list-style:none;
  background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.015));
  border:1px solid rgba(255,255,255,.08);
  padding:0;
  margin:0 !important;
  overflow:hidden;
  transition:.25s ease;
}

.post-type-archive-product ul.products li.product:hover,
.tax-product_cat ul.products li.product:hover{
  transform:translateY(-4px);
  border-color:rgba(240,180,30,.45);
}

.post-type-archive-product ul.products li.product a img,
.tax-product_cat ul.products li.product a img{
  width:100%;
  aspect-ratio: 4 / 3;
  object-fit:cover;
  margin:0 !important;
  display:block;
}

.post-type-archive-product ul.products li.product .woocommerce-loop-product__title,
.tax-product_cat ul.products li.product .woocommerce-loop-product__title{
  color:#fff;
  font-size:21px;
  font-weight:800;
  line-height:1.2;
  padding:18px 18px 8px;
  text-transform:uppercase;
}

.post-type-archive-product ul.products li.product .price,
.tax-product_cat ul.products li.product .price{
  padding:0 18px 18px;
  color:#fff !important;
  font-size:16px;
  font-weight:700;
}

.post-type-archive-product ul.products li.product .price del,
.tax-product_cat ul.products li.product .price del{
  color:rgba(255,255,255,.45);
  margin-right:6px;
}

.post-type-archive-product ul.products li.product .price ins,
.tax-product_cat ul.products li.product .price ins{
  text-decoration:none;
  color:#f0b41e;
}

.post-type-archive-product ul.products li.product .button,
.tax-product_cat ul.products li.product .button{
  margin:0 18px 18px !important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:12px 22px;
  border:1px solid #d9a51d;
  background:#f0b41e;
  color:#111 !important;
  font-weight:800;
  text-transform:uppercase;
  text-decoration:none;
  border-radius:0;
}

.post-type-archive-product ul.products li.product .button:hover,
.tax-product_cat ul.products li.product .button:hover{
  background:#d9a51d;
  color:#111 !important;
}

.post-type-archive-product nav.woocommerce-pagination,
.tax-product_cat nav.woocommerce-pagination{
  margin-top:44px;
  text-align:center;
}

.post-type-archive-product nav.woocommerce-pagination ul,
.tax-product_cat nav.woocommerce-pagination ul{
  border:none !important;
}

.post-type-archive-product nav.woocommerce-pagination ul li,
.tax-product_cat nav.woocommerce-pagination ul li{
  border:none !important;
}

.post-type-archive-product nav.woocommerce-pagination ul li span,
.post-type-archive-product nav.woocommerce-pagination ul li a,
.tax-product_cat nav.woocommerce-pagination ul li span,
.tax-product_cat nav.woocommerce-pagination ul li a{
  background:transparent;
  color:#fff;
  border:1px solid rgba(255,255,255,.16);
  margin:0 4px;
}

@media (max-width: 768px){
  .post-type-archive-product .woocommerce-products-header__title,
  .tax-product_cat .woocommerce-products-header__title{
    font-size:36px;
  }

  .post-type-archive-product ul.products,
  .tax-product_cat ul.products{
    grid-template-columns:1fr;
  }
}

/* =========================================
   PK TRANSFERY 
   ========================================= */
/* PK Shuttle Transfery fix — autor Peter Kofega */

section#hotnews{
    background: #0d0d0f !important;
    padding: 80px 20px !important;
}

section#hotnews .pkst-wrap{
    width: 100% !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    display: block !important;
}

section#hotnews .pkst-title{
    text-align: center !important;
    color: #fff !important;
    margin-bottom: 50px !important;
}

section#hotnews .pkst-title,
section#hotnews .pkst-title h2,
section#hotnews .pkst-title h3,
section#hotnews h2.pkst-title,
section#hotnews h3.pkst-title{
    color: #fff !important;
}

section#hotnews .pkst-table-wrap{
    width: 100% !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    overflow-x: auto !important;
    display: block !important;
}

section#hotnews table.pkst-table{
    width: 100% !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    table-layout: auto !important;
    border-collapse: collapse !important;
}

section#hotnews table.pkst-table th,
section#hotnews table.pkst-table td{
    white-space: normal !important;
    vertical-align: middle !important;
}

section#hotnews .pkst-bottom-row{
    width: 100% !important;
    max-width: 1180px !important;
    margin: 24px auto 0 !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 20px !important;
}

section#hotnews .pkst-top-grid{
    width: 100% !important;
    max-width: 1180px !important;
    margin: 0 auto 35px !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 24px !important;
}

section#hotnews .pkst-top-card{
    width: 100% !important;
    max-width: none !important;
}

@media (max-width: 991px){
    section#hotnews .pkst-top-grid{
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    section#hotnews .pkst-bottom-row{
        flex-direction: column !important;
        align-items: stretch !important;
    }
}

@media (max-width: 767px){
    section#hotnews{
        padding: 50px 12px !important;
    }

    section#hotnews .pkst-top-grid{
        grid-template-columns: 1fr !important;
    }

    section#hotnews table.pkst-table{
        min-width: 900px !important;
    }
}

/* Modal fix – autor Peter Kofega */

.pkst-modal-content label,
.pkst-modal-content .pkst-field label,
.pkst-modal-content .pkst-label,
.pkst-modal-content .pkst-form-group label{
    color: #ffffff !important;
    opacity: 1 !important;
}

.pkst-modal-content input,
.pkst-modal-content select,
.pkst-modal-content textarea{
    color: #ffffff !important;
    background: transparent !important;
}

.pkst-modal-content input::placeholder,
.pkst-modal-content textarea::placeholder{
    color: rgba(255,255,255,0.65) !important;
}

.pkst-modal-content{
    padding: 42px 42px 70px !important;
    box-sizing: border-box !important;
}

.pkst-modal-body{
    padding-bottom: 30px !important;
}

.pkst-modal-actions{
    padding-top: 24px !important;
    margin-top: 18px !important;
}

@media (max-width: 767px){
    .pkst-modal-content{
        padding: 20px 18px 34px !important;
        max-height: 90vh !important;
        overflow-y: auto !important;
    }

    .pkst-modal-actions{
        padding-bottom: 10px !important;
    }
}

.ast-scroll-to-top-right {
    right: 30px;
    bottom: 70px;
}

/* ===== TravelHub improvements ===== */
:root{
  --st-accent-red:#d93025;
  --st-whatsapp:#25D366;
}

.st-main{ padding-top:64px; }

.st-topbar__inner{
  padding:12px 0;
  font-size:15px;
}

.st-topbar__left{
  gap:12px 18px;
}

.st-topbar__item{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:15px;
}

.st-topbar__item strong{
  font-size:16px;
  letter-spacing:.01em;
}

.st-topbar__txt{
  font-size:13px;
}

.st-ic{
  width:30px;
  height:30px;
  margin-right:0;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1;
  font-size:14px;
  font-weight:900;
  color:#fff;
  background:var(--st-accent-red);
  box-shadow:0 10px 22px rgba(217,48,37,.25);
}

.st-ic--mail,
.st-ic--phone{
  background:var(--st-accent-red);
}

.st-ic--whatsapp{
  background:var(--st-whatsapp);
  font-size:11px;
}

.st-ic--location{
  background:rgba(246,178,26,.18);
  color:var(--st-accent,#f6b21a);
  box-shadow:none;
}

.st-topbar__item--phone strong,
.st-topbar__item--mail strong,
.st-topbar__item--whatsapp strong{
  color:#fff;
}

.st-hero__brand{
  display:flex;
  justify-content:center;
  margin-bottom:24px;
}

.st-hero__brand img{
  width:min(720px, 92%);
  height:auto;
  max-height:none;
}

.st-contact-ic--whatsapp{
  background:var(--st-whatsapp);
  color:#fff;
  border-color:transparent;
  font-weight:900;
  font-size:13px;
}

.st-contact .strong a{
  color:#fff;
  text-decoration:none;
}

.st-reviews,
.st-trust{
  background:#161a23;
}

.st-reviews-summary{
  display:grid;
  grid-template-columns: 280px 1fr;
  gap:28px;
  align-items:center;
  margin-bottom:28px;
}

.st-reviews-score,
.st-reviews-copy,
.st-review-card,
.st-trust-badge{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  padding:24px;
  box-shadow:0 16px 36px rgba(0,0,0,.18);
}

.st-reviews-score{
  text-align:center;
}

.st-reviews-score__value{
  font-size:54px;
  line-height:1;
  font-weight:900;
  color:#fff;
}

.st-reviews-score__stars{
  margin:10px 0 8px;
  color:#f6b21a;
  letter-spacing:.18em;
  font-size:22px;
}

.st-reviews-score__meta,
.st-reviews-copy p,
.st-review-card p,
.st-trust-badge p{
  color:rgba(255,255,255,.78);
  line-height:1.7;
  margin:0;
}

.st-reviews-copy{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
}

.st-reviews-copy .st-btn{
  flex:0 0 auto;
}

.st-reviews-grid,
.st-trust-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}

.st-review-card__head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:14px;
}

.st-review-card__head strong{
  color:#fff;
  font-size:18px;
}

.st-review-card__head span{
  color:#f6b21a;
  letter-spacing:.12em;
}

.st-trust-grid{
  grid-template-columns:repeat(4,1fr);
}

.st-trust-badge{
  text-align:center;
}

.st-trust-badge__icon{
  width:64px;
  height:64px;
  margin:0 auto 16px;
  border-radius:18px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg, rgba(246,178,26,.24), rgba(217,48,37,.22));
  color:#fff;
  font-size:22px;
  font-weight:900;
}

.st-trust-badge h3{
  margin:0 0 10px;
  font-size:20px;
}

@media (max-width: 1100px){
  .st-reviews-grid{ grid-template-columns:1fr 1fr; }
  .st-trust-grid{ grid-template-columns:1fr 1fr; }
}

@media (max-width: 920px){
  .st-main{ padding-top:82px; }
  .st-topbar__inner{
    flex-direction:column;
    align-items:flex-start;
  }
  .st-topbar__left{
    display:flex !important;
    width:100%;
    justify-content:flex-start;
  }
}

@media (max-width: 767px){
  .st-topbar__inner{
    gap:10px;
  }
  .st-topbar__left{
    gap:10px;
  }
  .st-topbar__item{
    font-size:14px;
    gap:8px;
  }
  .st-topbar__txt{
    display:none;
  }
  .st-main{ padding-top:110px; }
  .st-hero__brand img{ width:min(520px, 96%); }
  .st-reviews-summary{ grid-template-columns:1fr; }
  .st-reviews-copy{ flex-direction:column; align-items:flex-start; }
  .st-reviews-grid,
  .st-trust-grid{ grid-template-columns:1fr; }
}


/* ===== TravelHub compact topbar v2 ===== */
.st-topbar__left--compact{
  gap:10px 18px;
}

.st-topbar__left--compact .st-topbar__item{
  gap:8px;
  font-size:14px;
}

.st-topbar__left--compact .st-topbar__txt{
  display:none !important;
}

.st-topbar__left--compact .st-topbar__item strong{
  font-size:14px;
  font-weight:800;
}

.st-topbar__left--compact .st-ic{
  width:26px;
  height:26px;
  font-size:12px;
}

.st-topbar__right{
  margin-left:auto;
}

.st-topbar__inner{
  padding:8px 0;
}

.st-main{
  padding-top:56px;
}

.st-hero__brand{
  margin-bottom:16px;
}

.st-hero__brand img{
  width:min(680px, 90%);
}

@media (max-width: 920px){
  .st-topbar__left--compact{
    display:flex !important;
    gap:8px 12px;
  }

  .st-topbar__inner{
    align-items:center;
  }
}

@media (max-width: 767px){
  .st-topbar__inner{
    flex-direction:column;
    align-items:flex-start;
  }

  .st-topbar__left--compact{
    width:100%;
  }

  .st-topbar__left--compact .st-topbar__item strong{
    font-size:13px;
  }

  .st-topbar__right{
    width:100%;
    margin-left:0;
  }

  .st-main{
    padding-top:96px;
  }
}


/* ===== Contact section repair v3 ===== */
.st-contact-grid{
  display:block !important;
}

.st-contact-left{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:18px;
  margin-bottom:42px;
}

.st-contact-left .st-section-head{
  grid-column:1 / -1;
  margin-bottom:8px;
}

.st-contact-item{
  margin:0;
  padding:18px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.03);
  min-height:84px;
  align-items:center;
}

.st-contact-right{
  max-width:980px;
}

.st-msgform-grid{
  grid-template-columns:1fr 1fr;
}

.st-hero__brand img{
  width:min(620px, 86%);
  display:block;
  margin:0 auto;
}

@media (max-width: 991px){
  .st-contact-left{
    grid-template-columns:1fr;
  }

  .st-contact-right{
    max-width:none;
  }
}


/* ===== Menu fallback + Slovak default fix visual v4 ===== */
.st-menu__list{
  display:flex;
  align-items:center;
  gap:28px;
  margin:0;
  padding:0;
}

.st-menu__list li,
.st-footer__menu li{
  list-style:none;
}

.st-menu__list a{
  color:#fff;
  text-decoration:none;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.st-menu__list a:hover{
  color:var(--st-accent,#f6b21a);
}

.st-hero__brand{
  min-height:80px;
}

.st-hero__brand img{
  visibility:visible !important;
  opacity:1 !important;
}

/* ===== Trust badges: 5-star rating badge ===== */
.st-trust-badge__icon--stars{
  width:118px;
  letter-spacing:.12em;
  font-size:18px;
  color:#f6b21a;
  text-shadow:0 0 18px rgba(246,178,26,.35);
}

/* ===== Stronger contact section ===== */
.st-contact{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 18% 8%, rgba(246,178,26,.16), transparent 34%),
    linear-gradient(180deg, #090b10, #111622) !important;
}
.st-contact::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg, rgba(246,178,26,.08), transparent 45%, rgba(255,255,255,.035));
}
.st-contact .st-container{
  position:relative;
  z-index:1;
}
.st-contact-left,
.st-contact-right{
  position:relative;
  padding:28px;
  border:1px solid rgba(246,178,26,.22);
  border-radius:24px;
  background:rgba(255,255,255,.045);
  box-shadow:0 24px 70px rgba(0,0,0,.34);
  backdrop-filter:blur(10px);
}
.st-contact-left{
  margin-bottom:34px;
}
.st-contact-item{
  border-color:rgba(246,178,26,.24) !important;
  background:linear-gradient(135deg, rgba(246,178,26,.10), rgba(255,255,255,.045)) !important;
  border-radius:18px;
  box-shadow:0 14px 30px rgba(0,0,0,.18);
  transition:transform .2s ease, border-color .2s ease, background .2s ease;
}
.st-contact-item:hover{
  transform:translateY(-2px);
  border-color:rgba(246,178,26,.52) !important;
  background:linear-gradient(135deg, rgba(246,178,26,.16), rgba(255,255,255,.06)) !important;
}
.st-contact-ic{
  flex:0 0 auto;
  border-radius:14px;
  background:#f6b21a;
  color:#111;
  border-color:transparent;
  font-weight:900;
  box-shadow:0 12px 28px rgba(246,178,26,.24);
}
.st-contact-ic--whatsapp{
  background:#25D366;
  color:#fff;
}
.st-contact .strong,
.st-contact .strong a{
  font-size:19px;
  line-height:1.25;
  color:#fff !important;
}
.st-msgform input,
.st-msgform textarea{
  background:rgba(0,0,0,.18);
  border:1px solid rgba(246,178,26,.28);
  border-radius:14px;
  padding:14px 16px;
}
.st-msgform input:focus,
.st-msgform textarea:focus{
  border-color:#f6b21a;
  box-shadow:0 0 0 4px rgba(246,178,26,.13);
}
.st-contact .st-btn{
  margin-top:18px;
  border-color:#f6b21a;
  background:#f6b21a;
  color:#111;
}

@media (max-width: 991px){
  .st-contact-left,
  .st-contact-right{
    padding:22px;
  }
}
