/* Volity — newsletter form fit (sidebar .start-journey + EN footer form 87f27a8)
   Supports the unified email/WhatsApp tel field + consent checkbox added 2026-07-12.
   !important beats Elementor's col-70/30 widths, the high-specificity container padding
   rule, and the sidebar container's --align-items:flex-start.
   Enqueued site-wide by mu-plugin volity-newsletter-form-fit.php (v2). */

/* ============ Shared: placeholder never clips (typed text stays full size) ============ */
.start-journey .elementor-widget-form .elementor-field-textual::placeholder,
.elementor-element-87f27a8 .elementor-field-textual::placeholder{
  font-size:13px !important;
  opacity:.85 !important;
}

/* ================================ SIDEBAR CARD ================================ */
/* Container: kill the 120px bottom-padding void + stretch children to full width */
.start-journey.elementor-element-9c43ddf,
.start-journey.e-con{
  --padding-top:44px !important;
  --padding-bottom:44px !important;
  --align-items:stretch !important;
}
.start-journey .elementor-widget-heading,
.start-journey .elementor-widget-form{
  width:100% !important;
  max-width:100% !important;
  align-self:stretch !important;
}
/* Stack fields full width */
.start-journey .elementor-widget-form .elementor-form-fields-wrapper{
  margin:0 !important;
  display:flex !important;
  flex-direction:column !important;
  flex-wrap:nowrap !important;
  align-items:stretch !important;
  gap:12px !important;
}
.start-journey .elementor-widget-form .elementor-field-group{
  width:100% !important;
  max-width:100% !important;
  flex:0 0 auto !important;
  padding:0 !important;
  margin:0 !important;
}
.start-journey .elementor-widget-form .elementor-field-textual,
.start-journey .elementor-widget-form input[type="email"],
.start-journey .elementor-widget-form input[type="tel"]{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  height:50px !important;
  font-size:16px !important;
  padding:0 12px !important;
  box-sizing:border-box !important;
}
.start-journey .elementor-widget-form .elementor-field-type-submit,
.start-journey .elementor-widget-form .e-form__buttons{
  width:100% !important;
  max-width:100% !important;
}
.start-journey .elementor-widget-form .elementor-button{
  width:100% !important;
  justify-content:center !important;
  height:50px !important;
  font-size:16px !important;
}

/* ================================ EN FOOTER FORM ================================ */
/* Keep [email][Subscribe] on one row; drop the consent full-width onto its own row below. */
.elementor-element-87f27a8 .elementor-form-fields-wrapper{
  flex-wrap:wrap !important;
  align-items:center !important;
}
.elementor-element-87f27a8 .elementor-field-group-email{ order:1 !important; }
.elementor-element-87f27a8 .elementor-field-type-submit,
.elementor-element-87f27a8 .e-form__buttons{ order:2 !important; }
.elementor-element-87f27a8 .elementor-field-type-acceptance{
  order:3 !important;
  width:100% !important;
  flex:0 0 100% !important;
  max-width:100% !important;
  margin-top:10px !important;
}

/* ============ Shared: consent checkbox row (legible on the purple gradient) ============ */
.start-journey .elementor-widget-form .elementor-field-option,
.elementor-element-87f27a8 .elementor-field-option{
  display:flex !important;
  align-items:flex-start !important;
  gap:8px !important;
  text-align:left !important;
}
.start-journey .elementor-widget-form .elementor-field-type-acceptance label,
.start-journey .elementor-widget-form .elementor-field-option label,
.elementor-element-87f27a8 .elementor-field-type-acceptance label,
.elementor-element-87f27a8 .elementor-field-option label{
  color:#fff !important;
  font-size:12px !important;
  line-height:1.45 !important;
  font-weight:400 !important;
  margin:0 !important;
}
.start-journey .elementor-widget-form .elementor-field-type-acceptance a,
.elementor-element-87f27a8 .elementor-field-type-acceptance a{
  color:#fff !important;
  text-decoration:underline !important;
}
.start-journey .elementor-widget-form input[type="checkbox"],
.elementor-element-87f27a8 input[type="checkbox"]{
  flex:0 0 auto !important;
  width:16px !important;
  height:16px !important;
  margin:2px 0 0 0 !important;
  accent-color:#0d0f1a !important;
}

/* ============ Consent gate: Subscribe greyed + unclickable until consent is ticked ============ */
.start-journey .elementor-widget-form .elementor-button[disabled],
.start-journey .elementor-widget-form .elementor-button.volity-consent-disabled,
.elementor-element-87f27a8 .elementor-button[disabled],
.elementor-element-87f27a8 .elementor-button.volity-consent-disabled{
  opacity:.45 !important;
  cursor:not-allowed !important;
  filter:grayscale(35%) !important;
}

/* ============ Branded consent warning (replaces the native required bubble) ============ */
.start-journey .elementor-widget-form .volity-consent-warn,
.elementor-element-87f27a8 .volity-consent-warn{
  display:none;
  align-items:center;
  gap:8px;
  width:100%;
  margin-top:10px;
  color:#fff;
  font-size:13px;
  line-height:1.4;
  text-align:left;
}
.start-journey .elementor-widget-form .volity-consent-warn.is-visible,
.elementor-element-87f27a8 .volity-consent-warn.is-visible{ display:flex; }
.start-journey .elementor-widget-form .volity-consent-warn::before,
.elementor-element-87f27a8 .volity-consent-warn::before{
  content:"!";
  flex:0 0 auto;
  width:18px; height:18px;
  display:inline-flex; align-items:center; justify-content:center;
  background:#f5a623; color:#1a1d2e;
  border-radius:50%;
  font-weight:700; font-size:13px;
}
/* footer: keep the warning below the consent row, not at the top */
.elementor-element-87f27a8 .volity-consent-warn{ order:4 !important; }
