/* === YUME – PRODUCT SEKCE (final, 2 CTA) === */
.custom-product-section{
  position:relative; left:50%; right:50%;
  margin-left:-50vw; margin-right:-50vw;
  width:100vw!important; max-width:100vw!important;
  padding:72px min(4.5vw,64px);
  box-sizing:border-box; background:#fff; color:var(--g);
  font-family:Poppins,sans-serif;
}
.custom-product-inner{ display:flex; align-items:center; justify-content:space-between; gap:64px; max-width:1600px; margin:0 auto; }
.custom-product-section .product-text{ flex:1; text-align:left; max-width:640px; }
.custom-product-section .product-text h2{
  font-size:clamp(21px,2.4vw,33px); line-height:1.2; font-weight:800; color:var(--g); margin:0 0 28px; text-transform:uppercase;
}
.custom-product-section .product-text p{ font-size:16px; line-height:1.8; color:var(--g); margin:0 0 18px; font-weight:400; }
.custom-product-section .product-text p strong{ font-weight:800; }
.custom-product-section .product-text .subtext{ opacity:.95; }
.custom-product-section .product-info{ margin-top:28px; display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.custom-product-section .product-info .price{ font-weight:700; font-size:16px; color:#111; }
.custom-product-section .product-info span{ background:#f9f9f9; border:1px solid #eee; border-radius:30px; padding:6px 14px; font-size:16px; text-transform:none; }

/* 2 CTA vedle sebe – outline → fill on hover */
.custom-product-section .cta-row{ margin-top:40px; display:flex; align-items:center; flex-wrap:wrap; gap:16px; }
.custom-product-section .btn{
  display:inline-block; border:2px solid var(--p); border-radius:999px;
  padding:12px 30px; text-decoration:none; font-weight:700; font-size:17px; line-height:1;
  transition:.25s; background:transparent; color:var(--p); cursor:pointer;
}
.custom-product-section .btn:hover{ background:var(--p); color:#fff; }

/* Obrázek */
.custom-product-section .product-image{ flex:1; text-align:center; transform:translateX(-3vw); }
.custom-product-section .product-image img{ max-width:105%; border-radius:12px; height:auto; display:inline-block; }

/* Responsive */
@media (max-width:900px){
  .custom-product-inner{ flex-direction:column-reverse; gap:36px; }
  .custom-product-section{ padding:56px 5vw; }
  .custom-product-section .product-text{ text-align:center; max-width:none; }
  .custom-product-section .product-info{ justify-content:center; }
  .custom-product-section .product-image{ transform:none; }
  .custom-product-section .product-image img{ max-width:100%; }
  .custom-product-section .cta-row{ flex-direction:column; gap:14px; }
  .custom-product-section .btn{ width:100%; max-width:320px; }
}

/* Kill quantity hacky, kdyby je šablona znovu propsala */
#yume-custom-product input[type="number"],
#yume-custom-product .quantity-row,
#yume-custom-product .quantity-box,
#yume-custom-product [class*="quantity"],
#yume-custom-product .qty,
#yume-custom-product .p-qty,
#yume-custom-product button[data-step]{ display:none!important; }
/* === CTA BUTTONS – stejná šířka a perfektní zarovnání === */
.custom-product-section .cta-row {
  margin-top: 40px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 16px;
}

.custom-product-section .btn {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border: 2px solid var(--p);
  border-radius: 999px;
  padding: 12px 0;
  text-decoration: none;
  font-weight: 700;
  font-size: 17px;
  line-height: 1;
  transition: 0.25s;
  background: transparent;
  color: var(--p);
  cursor: pointer;
  width: 210px;            /* ✅ stejná šířka */
  text-align: center;
  box-sizing: border-box;
}

.custom-product-section .btn:hover {
  background: var(--p);
  color: #fff;
}

/* === Responsive fix === */
@media (max-width: 900px) {
  .custom-product-section .cta-row {
    flex-direction: column;
    gap: 14px;
  }

  .custom-product-section .btn {
    width: 100%;
    max-width: 320px;
  }
}
/* === PATCH: CTA spacing + jistota vzhledu tlačítek === */
.custom-product-section .product-info + .cta-row {
  margin-top: 28px !important;   /* víc vzduchu pod odznaky */
}

.custom-product-section .cta-row {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.custom-product-section .cta-row .btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  padding: 12px 30px !important;
  border: 2px solid var(--p) !important;
  border-radius: 999px !important;
  font-weight: 700;
  font-size: 17px;
  line-height: 1;
  background: transparent;
  color: var(--p);
  cursor: pointer;
}

.custom-product-section .cta-row .btn:hover {
  background: var(--p);
  color: #fff;
}
/* YUME – CTA overlay guard */
#yume-custom-product .cta-row {
  position: relative;
  z-index: 99998;
}
#yume-custom-product .cta-row .btn {
  position: relative;
  z-index: 99999;
  pointer-events: auto;
}
/* === FIX: neblokuj kliky přes obrázkový sloupec === */
.custom-product-section .product-image,
.custom-product-section .product-image * {
  pointer-events: none !important;
}

/* ať mají CTA absolutní prioritu */
#yume-custom-product .cta-row { position: relative; z-index: 9998; }
#yume-custom-product .cta-row .btn { position: relative; z-index: 9999; pointer-events: auto; }

/* produkt – obrázek nesmí brát kliky, CTA mají prioritu */
.custom-product-section .product-image,
.custom-product-section .product-image * { pointer-events: none !important; }
#yume-custom-product .cta-row { position: relative; z-index: 9998; }
#yume-custom-product .cta-row .btn { position: relative; z-index: 9999; pointer-events: auto; }

/* hero – totéž */
.yume-hero__image, .yume-hero__image * { pointer-events: none !important; }
/* YUME – adaptace nativního HP produktového bloku */
.yume-adapted-product { font-family: Poppins, sans-serif; color: var(--g); }
.yume-adapted-product .yume-cta-row{
  margin-top: 24px;
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  align-items: center;
}
.yume-adapted-product .yume-btn{
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border: 2px solid var(--p);
  border-radius: 999px;
  padding: 12px 30px;
  font-weight: 700;
  font-size: 17px;
  line-height: 1;
  background: transparent;
  color: var(--p);
  cursor: pointer;
  transition: .25s;
  text-decoration: none;
}
.yume-adapted-product .yume-btn:hover{
  background: var(--p);
  color: #fff;
}

/* ochrana proti overlayům v boxu */
.yume-adapted-product .image,
.yume-adapted-product .img,
.yume-adapted-product picture,
.yume-adapted-product img { pointer-events: none; }

/* mobilní šířky */
@media (max-width: 900px){
  .yume-adapted-product .yume-btn{ width: 100%; max-width: 320px; }
  .yume-adapted-product .yume-cta-row{ flex-direction: column; }
}
