/* ============================================================================
   Vincar — v2 polish & interaction layer (ADDITIVE, brand-consistent)
   Loaded on top of the cloned Tilda Zero Block site. Touches only safe targets
   (buttons, inputs, whole sections, own fixed widgets) — never the absolute
   positioning of Zero Block atoms.
   Brand: dark #171515 + coral #fa876b / #ff8562, Unbounded + Manrope.
   ========================================================================== */

:root{
  --vc-accent:#fa876b;
  --vc-accent-2:#ff8562;
  --vc-ease:cubic-bezier(.16,1,.3,1);
}

/* smooth in-page scrolling for anchor jumps */
html{scroll-behavior:smooth;}

/* --- top scroll progress bar ---------------------------------------------- */
.vc-progress{
  position:fixed;top:0;left:0;height:3px;width:0;z-index:100050;
  background:linear-gradient(90deg,var(--vc-accent),var(--vc-accent-2));
  box-shadow:0 0 14px rgba(250,135,107,.65);
  transition:width .08s linear;pointer-events:none;border-radius:0 3px 3px 0;
}

/* --- scroll reveal (whole sections; hidden state added by JS only) -------- */
.vc-reveal{
  opacity:0;transform:translateY(36px);
  transition:opacity .85s var(--vc-ease),transform .85s var(--vc-ease);
  will-change:opacity,transform;
}
.vc-reveal.vc-in{opacity:1;transform:none;}

/* --- Zero Block CTA buttons: tactile hover -------------------------------- */
.t396 .tn-elem[data-elem-type="button"] .tn-atom{
  transition:transform .3s var(--vc-ease),box-shadow .3s ease,filter .3s ease !important;
  will-change:transform;
}
.t396 .tn-elem[data-elem-type="button"]:hover .tn-atom{
  transform:translateY(-3px);
  filter:brightness(1.06);
  box-shadow:0 14px 30px -10px rgba(0,0,0,.45),0 6px 14px -8px rgba(250,135,107,.5) !important;
}
.t396 .tn-elem[data-elem-type="button"]:active .tn-atom{transform:translateY(-1px);}
/* arrow icon nudge on hover */
.t396 .tn-elem[data-elem-type="button"] .tn-atom__button-icon{
  transition:transform .3s var(--vc-ease);
}
.t396 .tn-elem[data-elem-type="button"]:hover .tn-atom__button-icon{transform:translateX(4px);}

/* --- form submit button --------------------------------------------------- */
.t-submit,.t-form__submit .t-submit{
  transition:transform .25s var(--vc-ease),box-shadow .25s ease,filter .25s ease !important;
}
.t-submit:hover{
  transform:translateY(-2px);filter:brightness(1.07);
  box-shadow:0 14px 32px -10px rgba(0,0,0,.55) !important;
}
.t-submit:active{transform:translateY(0);}

/* --- form inputs: clearer focus ------------------------------------------- */
.t-input,.t-checkbox + .t-checkbox__indicator{
  transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease !important;
}
.t-input:focus{
  box-shadow:0 0 0 2px rgba(250,135,107,.6) !important;
  border-color:var(--vc-accent) !important;
}

/* --- image polish: gentle fade when they finish loading ------------------- */
.t396 .tn-atom__img{transition:filter .5s ease,opacity .5s ease;}

/* --- sticky mobile CTA (own widget, bottom-center, clears the chat bubble) - */
.vc-sticky-cta{
  position:fixed;left:50%;bottom:18px;z-index:100040;
  transform:translateX(-50%) translateY(160%);
  display:inline-flex;align-items:center;gap:9px;
  padding:15px 28px;border:0;border-radius:999px;cursor:pointer;
  font-family:'Unbounded',Arial,sans-serif;font-weight:600;font-size:15px;line-height:1;color:#fff;
  background:linear-gradient(135deg,#fa876b,#ff5e3f);
  box-shadow:0 12px 34px -8px rgba(250,135,107,.7),0 6px 16px rgba(0,0,0,.4);
  transition:transform .5s var(--vc-ease),opacity .3s ease;opacity:0;
  -webkit-tap-highlight-color:transparent;white-space:nowrap;
}
.vc-sticky-cta.vc-show{transform:translateX(-50%) translateY(0);opacity:1;}
.vc-sticky-cta:active{filter:brightness(.94);}
.vc-sticky-cta svg{width:15px;height:15px;flex:none;animation:vc-bob 1.6s var(--vc-ease) infinite;}
@keyframes vc-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(3px)}}
@media (min-width:641px){.vc-sticky-cta{display:none !important;}}

/* --- reduced motion ------------------------------------------------------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  .vc-reveal{opacity:1 !important;transform:none !important;transition:none !important;}
  .vc-sticky-cta svg{animation:none;}
}
