.elementor-widget-fx_tlacitko{display:flex}
.elementor-widget-fx_tlacitko > .elementor-widget-container{display:flex;flex:1 1 auto;min-width:0}
.fxt-wrap{display:flex;flex:1 1 auto;justify-content:flex-start;align-items:stretch;min-width:0}
.fxt-btn{
  --fxt-arrow-size:16px;
  --fxt-box-size:40px;
  --fxt-arrow-right:14px;
  --fxt-arrow-scale:1.5;
  --fxt-lift:3px;
  position:relative;
  background:none;
  color:#fff;
  border:1px solid transparent;
  padding:16px 22px;
  border-radius:3px;
  font-family:'Montserrat',sans-serif;
  font-weight:800;
  font-size:1rem;
  line-height:1.2;
  text-decoration:none !important;
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  text-align:left;
  box-sizing:border-box;
  cursor:pointer;
  transition:transform .2s ease,filter .2s ease;
}
.fxt-btn:hover,.fxt-btn:focus{
  color:#fff;
  text-decoration:none !important;
  transform:translateY(calc(var(--fxt-lift) * -1));
}
.fxt-bg{
  position:absolute;
  inset:0;
  z-index:0;
  border-radius:inherit;
  background:linear-gradient(90deg,#4892ff,#001c49);
  pointer-events:none;
}
.fxt-bg::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:radial-gradient(130% 160% at 0% 50%,var(--fxt-glow,#6c4fff) 0%,transparent 72%);
  opacity:0;
  transition:opacity .3s ease;
  pointer-events:none;
}
.fxt-btn:not(.is-selected):hover .fxt-bg::before,
.fxt-btn:not(.is-selected):focus .fxt-bg::before{opacity:.9}
.fxt-text{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  padding-right:calc(var(--fxt-box-size) + var(--fxt-arrow-right) + 16px);
}
.fxt-title{font-weight:800;font-size:19px;line-height:1.2;color:inherit}
.fxt-sub{font-weight:300;font-size:15px;line-height:1.3;color:inherit;margin-top:4px}
.fxt-arrow{
  position:absolute;
  top:50%;
  right:var(--fxt-arrow-right);
  width:var(--fxt-box-size);
  height:var(--fxt-box-size);
  margin-top:calc(var(--fxt-box-size) / -2);
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.2);
  border-radius:6px;
  box-sizing:border-box;
  pointer-events:none;
  z-index:1;
}
.fxt-arrow svg{
  display:block;
  width:var(--fxt-arrow-size);
  height:var(--fxt-arrow-size);
  fill:currentColor;
  transition:transform .2s ease;
  transform:rotate(var(--fxt-rot,0deg)) scale(1);
  transform-origin:center;
}
.fxt-btn:hover .fxt-arrow svg,.fxt-btn:focus .fxt-arrow svg{transform:rotate(var(--fxt-rot,0deg)) scale(var(--fxt-arrow-scale))}
@media (prefers-reduced-motion:reduce){
  .fxt-btn,.fxt-arrow svg{transition:none}
  .fxt-btn:hover{transform:none}
}

.elementor-widget-fx_tlacitko.fxt-stretch-yes{
  flex:1 1 var(--fxt-basis,300px) !important;
  width:auto !important;
  max-width:none !important;
  min-width:var(--fxt-minw,0px) !important;
}
.fxt-stretch-yes .fxt-btn{width:100%}
.elementor-widget-fx_tlacitko:not(.fxt-stretch-yes) .fxt-btn{min-width:var(--fxt-minw,0px)}
.e-con:has(> .elementor-widget-fx_tlacitko.fxt-stretch-yes),
.e-con-inner:has(> .elementor-widget-fx_tlacitko.fxt-stretch-yes){flex-wrap:wrap !important}

/* sklo */
@property --fxt-ag{syntax:'<color>';inherits:true;initial-value:#49a6ff}
.fxt-btn.is-glass{
  --fxt-ag:var(--fxt-arrow-glow,#49a6ff);
  transition:transform .2s ease,--fxt-ag .3s ease;
  box-shadow:0 0 0 1px rgba(255,255,255,.12),0 8px 24px rgba(0,0,0,.4);
}
.fxt-btn.is-glass .fxt-bg{
  background:linear-gradient(90deg,
    color-mix(in srgb,var(--fxt-g1,#4892ff) var(--fxt-glass-pct,50%),transparent),
    color-mix(in srgb,var(--fxt-g2,#001c49) var(--fxt-glass-pct,50%),transparent));
  -webkit-backdrop-filter:blur(var(--fxt-glass-blur,18px)) saturate(1.7);
  backdrop-filter:blur(var(--fxt-glass-blur,18px)) saturate(1.7);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45),inset 0 -1px 0 rgba(255,255,255,.08),inset 0 0 0 1px rgba(255,255,255,.32);
  overflow:hidden;
}
.fxt-btn.is-glass .fxt-bg::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:
    radial-gradient(circle calc(var(--fxt-box-size) * 0.85) at calc(100% - var(--fxt-arrow-right) - var(--fxt-box-size) / 2) 50%,
      color-mix(in srgb,var(--fxt-ag) 55%,transparent) 0%,
      color-mix(in srgb,#095399 22%,transparent) 55%,transparent 100%),
    linear-gradient(180deg,rgba(255,255,255,.26),rgba(255,255,255,.07) 55%,rgba(255,255,255,.07));
  pointer-events:none;
}

/* záře pod šipkou: v klidu modrá, na hover světle modrá */
.fxt-btn.is-glass:not(.is-selected):hover,
.fxt-btn.is-glass:not(.is-selected):focus{--fxt-ag:var(--fxt-arrow-glow-hover,#1fd6ff)}

/* sklo: políčko šipky – součást podkladu, bez vlastního rozostření */
:where(.fxt-btn.is-glass) .fxt-arrow{
  background:linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.04));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22),inset 0 0 0 1px rgba(255,255,255,.08);
}
.fxt-btn.is-glass .fxt-arrow::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,0) 50%);
  pointer-events:none;
}
.fxt-btn.is-glass .fxt-arrow svg{position:relative;z-index:1}

/* vybrané = bez odkazu */
.fxt-btn.is-selected{cursor:default}
.fxt-btn.is-selected.has-anchor{cursor:pointer}
.fxt-btn.is-selected:hover,.fxt-btn.is-selected:focus{transform:none;filter:none}
.fxt-btn.is-selected .fxt-arrow{background:rgba(255,255,255,.35)}
.fxt-btn.is-selected:hover .fxt-arrow svg{transform:rotate(var(--fxt-rot,0deg)) scale(1)}

@media (max-width:767px){
  .elementor.elementor .e-con > .elementor-widget.elementor-widget-fx_tlacitko{width:100%}
  .fxt-btn{width:100%}
}

/* dotyková zařízení: bez posunu nahoru */
@media (hover:none){
  .fxt-btn:hover,.fxt-btn:focus{transform:none}
}

/* proti blikání na spodním okraji: při hoveru drží kurzor nevidité pole pod tlačítkem */
.fxt-btn:not(.is-selected):hover::after,
.fxt-btn:not(.is-selected):focus::after{
  content:"";
  position:absolute;
  left:-1px;
  right:-1px;
  top:100%;
  height:calc(var(--fxt-lift) + 2px);
}
@media (hover:none){
  .fxt-btn:hover::after,.fxt-btn:focus::after{content:none}
}
