/* EU-NABYTEK – DOPRAVA ZDARMA BLOK */

.en-free-wrap{
  --en-yellow:#f2b705;
  --en-yellow-dark:#dda400;
  --en-yellow-soft:#fff6d9;
  --en-cream:#f7f1df;
  --en-black:#2b2b2b;
  --en-text:#2f2f2f;
  --en-muted:#6d6d6d;
  --en-white:#ffffff;
  --en-border:#ece3c2;
  --en-shadow:0 14px 34px rgba(0,0,0,0.08);
  max-width:1180px;
  margin:36px auto;
  padding:0 16px;
  font-family:Arial, Helvetica, sans-serif;
  color:var(--en-text);
  line-height:1.6;
}

.en-free-wrap *{
  box-sizing:border-box;
}

/* ANIMACE */

@keyframes enFadeUp{
  from{
    opacity:0;
    transform:translateY(26px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

@keyframes enFadeIn{
  from{
    opacity:0;
  }
  to{
    opacity:1;
  }
}

@keyframes enSoftScale{
  from{
    opacity:0;
    transform:translateY(18px) scale(.985);
  }
  to{
    opacity:1;
    transform:translateY(0) scale(1);
  }
}

@keyframes enPulseCta{
  0%, 100%{
    transform:scale(1);
    box-shadow:0 12px 24px rgba(0,0,0,0.14);
  }
  50%{
    transform:scale(1.03);
    box-shadow:0 18px 34px rgba(0,0,0,0.18);
  }
}

/* ZÁKLADNÍ NÁBĚH BLOKU */

.en-free-hero,
.en-free-grid,
.en-free-highlight,
.en-free-steps,
.en-free-thanks,
.en-free-cta{
  opacity:0;
  animation-fill-mode:forwards;
  animation-timing-function:cubic-bezier(.22,.61,.36,1);
}

/* HERO */

.en-free-hero{
  position:relative;
  overflow:hidden;
  background:linear-gradient(135deg, #f2b705 0%, #f5be12 55%, #e5ac00 100%);
  border-radius:30px;
  padding:38px 34px 34px;
  box-shadow:var(--en-shadow);
  animation-name:enSoftScale;
  animation-duration:.75s;
  animation-delay:.08s;
}

.en-free-topline,
.en-free-hero h1,
.en-free-lead{
  opacity:0;
  animation:enFadeUp .7s cubic-bezier(.22,.61,.36,1) forwards;
}

.en-free-topline{
  display:inline-block;
  margin-bottom:16px;
  padding:10px 16px;
  background:#2b2b2b;
  color:#fff;
  border-radius:999px;
  font-size:13px;
  font-weight:800;
  text-transform:uppercase;
  animation-delay:.18s;
}

.en-free-hero h1{
  margin:0 0 16px;
  font-size:46px;
  line-height:1.05;
  font-weight:900;
  letter-spacing:-1px;
  color:#111;
  text-transform:uppercase;
  animation-delay:.3s;
}

.en-free-hero h1 span{
  display:inline-block;
  color:#fff;
  background:#2b2b2b;
  padding:6px 16px 8px;
  border-radius:12px;
  margin-top:10px;
}

.en-free-lead{
  font-size:18px;
  font-weight:600;
  animation-delay:.42s;
}

/* BODY */

.en-free-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:20px;
  margin-top:24px;
  animation-name:enFadeIn;
  animation-duration:.5s;
  animation-delay:.55s;
}

.en-free-card{
  background:#fff;
  border:1px solid var(--en-border);
  border-radius:22px;
  padding:26px 22px;
  box-shadow:var(--en-shadow);
  opacity:0;
  transform:translateY(22px);
  animation:enFadeUp .75s cubic-bezier(.22,.61,.36,1) forwards;
  transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

.en-free-card:nth-child(1){
  animation-delay:.68s;
}

.en-free-card:nth-child(2){
  animation-delay:.84s;
}

.en-free-card:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 36px rgba(0,0,0,0.11);
  border-color:#e3d39a;
}

.en-free-card h2{
  margin:0 0 14px;
  font-size:26px;
}

.en-free-list{
  list-style:none;
  padding:0;
  margin:0;
}

.en-free-list li{
  padding-left:30px;
  margin:10px 0;
  position:relative;
  font-weight:600;
}

.en-free-list li:before{
  content:"?";
  position:absolute;
  left:0;
  top:0;
  width:20px;
  height:20px;
  border-radius:50%;
  background:var(--en-yellow);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:12px;
  font-weight:900;
}

/* HIGHLIGHT */

.en-free-highlight{
  margin-top:24px;
  background:#2b2b2b;
  color:#fff;
  border-radius:22px;
  padding:26px;
  animation-name:enFadeUp;
  animation-duration:.75s;
  animation-delay:1s;
}

.en-free-highlight h2{
  margin:0 0 10px;
  font-size:28px;
}

.en-free-highlight p{
  margin:0;
  font-size:17px;
}

/* STEPS */

.en-free-steps{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin-top:24px;
  animation-name:enFadeIn;
  animation-duration:.45s;
  animation-delay:1.08s;
}

.en-free-step{
  background:var(--en-cream);
  border:1px solid var(--en-border);
  border-radius:20px;
  padding:22px;
  text-align:center;
  opacity:0;
  transform:translateY(20px);
  animation:enFadeUp .7s cubic-bezier(.22,.61,.36,1) forwards;
  transition:transform .28s ease, box-shadow .28s ease;
}

.en-free-step:nth-child(1){
  animation-delay:1.14s;
}

.en-free-step:nth-child(2){
  animation-delay:1.28s;
}

.en-free-step:nth-child(3){
  animation-delay:1.42s;
}

.en-free-step:hover{
  transform:translateY(-4px);
  box-shadow:0 16px 28px rgba(0,0,0,0.08);
}

.en-free-step-num{
  width:48px;
  height:48px;
  margin:0 auto 12px;
  border-radius:50%;
  background:var(--en-yellow);
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
}

/* THANKS */

.en-free-thanks{
  margin-top:24px;
  background:#fff8e8;
  border:1px solid var(--en-border);
  border-radius:22px;
  padding:24px;
  animation-name:enFadeUp;
  animation-duration:.7s;
  animation-delay:1.56s;
}

/* CTA */

.en-free-cta{
  margin-top:26px;
  background:var(--en-yellow);
  border-radius:26px;
  padding:30px 20px;
  text-align:center;
  animation-name:enSoftScale;
  animation-duration:.85s;
  animation-delay:1.72s;
}

.en-free-cta h2{
  margin:0 0 10px;
  font-size:34px;
  font-weight:900;
  text-transform:uppercase;
}

.en-free-cta-btn{
  display:inline-block;
  padding:16px 30px;
  background:#2b2b2b;
  color:#fff;
  text-decoration:none;
  border-radius:999px;
  font-weight:900;
  margin-top:14px;
  transition:transform .25s ease, box-shadow .25s ease, background .25s ease;
  animation:enPulseCta 2.8s ease-in-out 2.4s infinite;
}

.en-free-cta-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 30px rgba(0,0,0,0.18);
  background:#171717;
}

/* RESPONSIVE */

@media(max-width:768px){
  .en-free-grid,
  .en-free-steps{
    grid-template-columns:1fr;
  }

  .en-free-hero h1{
    font-size:30px;
  }
}

/* ACCESSIBILITY */

@media (prefers-reduced-motion: reduce){
  .en-free-hero,
  .en-free-grid,
  .en-free-highlight,
  .en-free-steps,
  .en-free-thanks,
  .en-free-cta,
  .en-free-topline,
  .en-free-hero h1,
  .en-free-lead,
  .en-free-card,
  .en-free-step,
  .en-free-cta-btn{
    animation:none !important;
    transition:none !important;
    opacity:1 !important;
    transform:none !important;
  }
}


/* BUTTON ADD TO CART */
/* Skryje pouze původní SVG košík v tlačítku DETAIL */
a.btn-to-cart svg.icon,
a.btn-to-cart svg.ic {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
}
/* Přidá vlastní ikonu oka */
.btn-to-cart::before {
    content: "";
    width: 16px;
    height: 16px;
    margin-right: 8px;
    display: inline-block;
    background-color: currentColor;

    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M288 80C120.8 80 24.6 214.8 0 256c24.6 41.2 120.8 176 288 176s263.4-134.8 288-176C551.4 214.8 455.2 80 288 80zm0 288a112 112 0 1 1 0-224 112 112 0 0 1 0 224zm0-64a48 48 0 1 0 0-96 48 48 0 0 0 0 96z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M288 80C120.8 80 24.6 214.8 0 256c24.6 41.2 120.8 176 288 176s263.4-134.8 288-176C551.4 214.8 455.2 80 288 80zm0 288a112 112 0 1 1 0-224 112 112 0 0 1 0 224zm0-64a48 48 0 1 0 0-96 48 48 0 0 0 0 96z'/%3E%3C/svg%3E");

    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-position: center;
    mask-position: center;
}
a.btn-to-cart::before {
    margin-right: 0px !important; /* zmenši z 8px třeba na 4px nebo 2px */
}
/* ACCESSIBILITY 
@layer modules {
  .img-fluid-2 {
    max-width: 100% !important;
    height: auto !important;
    max-height: 100% !important;
    width: auto !important;
  }
}
*/

/* Patička – sociální ikony + odznaky v jedné linii */
/* Celý řádek ikon */
footer .ftr-soc {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 28px !important;
    flex-wrap: wrap;
}

/* Položky v patičce */
footer .ftr-soc-item {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 65px;
    transition: transform 0.25s ease, opacity 0.25s ease;
}

/* FB + Instagram */
footer .ftr-soc-item svg,
footer .ftr-soc-item .ic {
    width: 34px !important;
    height: 34px !important;
}

footer .ftr-soc-item img {
    height: auto;
}

/* Kontejner pro Heureka + Favi */
footer .ftr-soc-item img[alt="Heureka"],
footer .ftr-soc-item img[alt="Favi"] {
    height: 100px !important;   /* sjednocená výška */
    width: auto !important;
    max-width: none !important;
    transform: scale(1.6);     /* zvětšení */
    transform-origin: center;
}

/* Hover efekt */
footer .ftr-soc-item:hover {
    transform: translateY(-3px) scale(1.08);
    opacity: 0.88;
}


.custom-heureka-badge {
  display: flex;
  align-items: right;
  margin-left: auto;
  margin-right: 30px;
}

.custom-heureka-badge img {
  height: 80px;
  width: auto;
  display: block;
}

@media (max-width: 600px) {
  .custom-heureka-badge {
    display: none;
  }
}