/* BizEra compact multilingual enquiry form */
.bizera24-form-shell{
  font-family:Inter,"Noto Sans Armenian",Arial,sans-serif;
  width:100%;
  max-width:760px;
  margin-top:26px;
  scroll-margin-top:110px;
}
.bizera24-form-shell .wpcf7{
  margin:0;
}
.bizera24-form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
}
/* CF7 wpautop can wrap all three labels in one paragraph. */
.bizera24-form-grid > p,
.bizera24-form-actions > p{display:contents;}
.bizera24-form-field{
  display:block;
  min-width:0;
  margin:0;
}
.bizera24-form-field--full,
.bizera24-form-actions{
  grid-column:1/-1;
}
.bizera24-form-label{
  display:block;
  margin:0 0 8px;
  color:#011C3A;
  font-size:14px;
  font-weight:600;
  line-height:1.35;
}
.bizera24-form-shell input[type="text"],
.bizera24-form-shell input[type="email"],
.bizera24-form-shell input[type="tel"],
.bizera24-form-shell textarea{
  box-sizing:border-box;
  width:100%;
  min-width:0;
  margin:0;
  border:1px solid rgba(1,28,58,.20);
  border-radius:10px;
  background:#fff;
  color:#011C3A;
  font:inherit;
  font-size:16px;
  line-height:1.45;
  outline:none;
  /* Apply focus/error borders without animating the deferred stylesheet. */
  transition:none;
}
.bizera24-form-shell input[type="text"],
.bizera24-form-shell input[type="email"],
.bizera24-form-shell input[type="tel"]{
  min-height:50px;
  padding:12px 14px;
}
.bizera24-form-shell textarea{
  min-height:112px;
  padding:12px 14px;
  resize:vertical;
}
.bizera24-form-shell input:focus,
.bizera24-form-shell textarea:focus{
  border-color:#0C7567;
  box-shadow:0 0 0 3px rgba(12,117,103,.12);
}
.bizera24-form-actions{
  display:flex;
  align-items:center;
  gap:12px;
}
.bizera24-form-shell input[type="submit"]{
  min-height:50px;
  margin:0;
  padding:13px 24px;
  border:1px solid #011C3A;
  border-radius:12px;
  background:#011C3A;
  color:#fff;
  font:inherit;
  font-size:13px;
  font-weight:700;
  letter-spacing:.045em;
  line-height:1.2;
  text-transform:uppercase;
  cursor:pointer;
}
.bizera24-form-shell input[type="submit"]:hover{
  background:#0C7567;
  border-color:#0C7567;
}
.bizera24-form-shell input[type="submit"]:focus-visible{
  outline:3px solid #BE8633;
  outline-offset:3px;
}
.bizera24-form-shell .wpcf7-spinner{
  margin:0;
}
.bizera24-form-shell .wpcf7-not-valid-tip{
  margin-top:6px;
  font-size:12.5px;
  line-height:1.35;
}
.bizera24-form-shell .wpcf7-response-output{
  margin:16px 0 0!important;
  padding:10px 12px!important;
  border-width:1px!important;
  border-radius:9px;
  font-size:13.5px;
  line-height:1.45;
}
.bizera24-form-shell .wpcf7-form-control-wrap{
  display:block;
}
.bizera24-form-shell p{
  margin:0;
}
@media(max-width:620px){
  .bizera24-form-shell{
    margin-top:22px;
  }
  .bizera24-form-grid{
    grid-template-columns:1fr;
    gap:20px;
  }
  .bizera24-form-field--full,
  .bizera24-form-actions{
    grid-column:auto;
  }
  .bizera24-form-shell input[type="submit"]{
    width:100%;
  }
}

/* Contact Form 7 structural fallback.
   BizEra must remain visually correct even when the site disables CF7's own CSS. */
.bizera24-form-shell .hidden-fields-container,
.bizera24-form-shell fieldset.hidden-fields-container{
  display:none!important;
  border:0!important;
  margin:0!important;
  padding:0!important;
  width:0!important;
  height:0!important;
  min-height:0!important;
  overflow:hidden!important;
}
.bizera24-form-shell .screen-reader-response{
  position:fixed!important;
  top:0!important;
  left:0!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
  border:0!important;
}
.bizera24-form-shell .wpcf7 form.init .wpcf7-response-output,
.bizera24-form-shell .wpcf7 form.resetting .wpcf7-response-output,
.bizera24-form-shell .wpcf7 form.submitting .wpcf7-response-output,
.bizera24-form-shell .wpcf7-response-output:empty{
  display:none!important;
}
.bizera24-form-shell .wpcf7 form.invalid .wpcf7-response-output,
.bizera24-form-shell .wpcf7 form.unaccepted .wpcf7-response-output{
  display:block!important;
  border-color:#BE8633!important;
}
.bizera24-form-shell .wpcf7 form.sent .wpcf7-response-output{
  display:block!important;
  border-color:#0C7567!important;
}
.bizera24-form-shell .wpcf7 form.failed .wpcf7-response-output,
.bizera24-form-shell .wpcf7 form.aborted .wpcf7-response-output,
.bizera24-form-shell .wpcf7 form.spam .wpcf7-response-output{
  display:block!important;
  border-color:#9b3a32!important;
}
.bizera24-form-shell .wpcf7-spinner{
  visibility:hidden;
  display:inline-block;
  width:18px;
  height:18px;
  flex:0 0 18px;
  border:2px solid rgba(1,28,58,.18);
  border-top-color:#0C7567;
  border-radius:50%;
  animation:none;
}
.bizera24-form-shell .wpcf7-spinner::before{content:none;}
.bizera24-form-shell .wpcf7 form.submitting .wpcf7-spinner{
  visibility:visible;
  animation:bizera24-spin .75s linear infinite;
}
.bizera24-form-shell .wpcf7 form.submitting input[type="submit"]{
  opacity:.72;
  cursor:wait;
}
@keyframes bizera24-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){
  .bizera24-form-shell .wpcf7 form.submitting .wpcf7-spinner{animation:none}
}


/* Clear format guidance under the shared phone-or-email field. */
.bizera24-form-hint{
  display:block;
  margin-top:7px;
  color:rgba(1,28,58,.62);
  font-size:12.5px;
  line-height:1.4;
}



html.bizera24-modal-open,
body.bizera24-modal-open{
  overflow:hidden!important;
}

/* Collapsed enquiry UX: one calm CTA by default. */
.bizera24-form-shell{
  position:relative;
}
.bizera24-form-toggle{
  min-height:50px;
  margin:0;
  padding:13px 24px;
  border:1px solid #011C3A;
  border-radius:12px;
  background:#011C3A;
  color:#fff;
  font:inherit;
  font-size:13px;
  font-weight:700;
  letter-spacing:.045em;
  line-height:1.2;
  text-transform:uppercase;
  cursor:pointer;
  transition:transform .16s ease;
}
.bizera24-form-toggle:hover{
  background:#0C7567;
  border-color:#0C7567;
}
.bizera24-form-toggle:focus-visible{
  outline:3px solid #BE8633;
  outline-offset:3px;
}
.bizera24-form-panel[hidden],
.bizera24-inline-success[hidden],
.bizera24-form-toggle[hidden]{
  display:none!important;
}
.bizera24-form-shell.is-open .bizera24-form-panel{display:block;}

/* Success replaces the form only after Contact Form 7 confirms mail_sent.
   No cookie/localStorage is used, so a normal page reload restores the CTA. */
.bizera24-inline-success{
  max-width:680px;
  display:flex;
  align-items:flex-start;
  gap:15px;
  padding:20px 22px;
  border:1px solid rgba(12,117,103,.24);
  border-radius:14px;
  background:linear-gradient(135deg,rgba(12,117,103,.075),rgba(247,244,237,.82));
  color:#011C3A;
  box-shadow:0 16px 40px rgba(1,28,58,.07);
  outline:none;
}
.bizera24-inline-success-mark{
  flex:0 0 32px;
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#0C7567;
  color:#fff;
  font-weight:700;
  line-height:1;
}
.bizera24-inline-success strong{
  display:block;
  margin:1px 0 5px;
  font-size:18px;
  line-height:1.25;
  color:#011C3A;
}
.bizera24-inline-success p{
  margin:0;
  font-size:14.5px;
  line-height:1.55;
  color:rgba(1,28,58,.78);
}

/* Native CF7 success remains a no-JS fallback, but when JS handled the success
   the entire form panel is hidden and only the BizEra confirmation is visible. */
.bizera24-form-shell .wpcf7-not-valid{
  border-color:#9b3a32!important;
  box-shadow:0 0 0 3px rgba(155,58,50,.08);
}
.bizera24-form-shell .wpcf7-not-valid-tip{
  color:#8a312b;
}

@media(max-width:620px){
  .bizera24-form-toggle{
    width:100%;
  }
  .bizera24-inline-success{
    padding:18px;
    border-radius:12px;
  }
}
@media(prefers-reduced-motion:reduce){
  .bizera24-form-shell.is-open .bizera24-form-panel{
    animation:none!important;
  }
  .bizera24-form-toggle{
    transition:none!important;
  }
}

/* 5.6.6 — confirmed success wins over CF7/theme state until full reload. */
.bizera24-form-shell.is-sent > .bizera24-form-toggle,
.bizera24-form-shell[data-bizera24-sent="1"] > .bizera24-form-toggle,
.bizera24-form-shell.is-sent > .bizera24-form-panel,
.bizera24-form-shell[data-bizera24-sent="1"] > .bizera24-form-panel{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
.bizera24-form-shell.is-sent > .bizera24-inline-success,
.bizera24-form-shell[data-bizera24-sent="1"] > .bizera24-inline-success{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}
html.bizera24-js .bizera24-form-shell.is-sent .wpcf7-response-output,
html.bizera24-js .bizera24-form-shell[data-bizera24-sent="1"] .wpcf7-response-output{
  display:none!important;
}



/* 5.6.7 — validation/error state must never collapse the form. */
html.bizera24-js .bizera24-form-shell.is-open > .bizera24-form-panel,
html.bizera24-js .bizera24-form-shell.has-form-error > .bizera24-form-panel{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}
html.bizera24-js .bizera24-form-shell.is-open > .bizera24-form-toggle,
html.bizera24-js .bizera24-form-shell.has-form-error > .bizera24-form-toggle{
  display:none!important;
}
html.bizera24-js .bizera24-form-shell.has-form-error .wpcf7-not-valid,
html.bizera24-js .bizera24-form-shell.has-form-error [aria-invalid="true"]{
  border-color:#9b3a32!important;
  box-shadow:0 0 0 3px rgba(155,58,50,.08)!important;
}
html.bizera24-js .bizera24-form-shell.has-form-error .wpcf7-not-valid-tip{
  display:block!important;
  color:#8a312b!important;
}
html.bizera24-js .bizera24-form-shell.has-form-error .wpcf7-response-output{
  display:block!important;
}


/* 5.6.9 — validation must never move the viewport. */
html.bizera24-validating{
  scroll-behavior:auto!important;
}


/* 5.12.2 — interaction hardening. No decorative layer may intercept typing. */
.bizera24-form-shell .bizera24-form-panel,
.bizera24-form-shell .wpcf7,
.bizera24-form-shell form.wpcf7-form,
.bizera24-form-shell .bizera24-form-grid,
.bizera24-form-shell .bizera24-form-field,
.bizera24-form-shell .wpcf7-form-control-wrap{
  position:relative!important;
  z-index:2!important;
  pointer-events:auto!important;
}
.bizera24-form-shell input[type="text"],
.bizera24-form-shell input[type="email"],
.bizera24-form-shell input[type="tel"],
.bizera24-form-shell textarea{
  position:relative!important;
  z-index:3!important;
  pointer-events:auto!important;
  user-select:text!important;
  -webkit-user-select:text!important;
  cursor:text!important;
  touch-action:manipulation!important;
}


/* 5.12.3 — Android / touch keyboard focus stability.
   Inputs must not live inside a transform animation while the virtual keyboard
   is opening, and touch input must remain fully native. */
html.bizera24-field-focus{
  scroll-behavior:auto!important;
}
.bizera24-form-shell input[type="text"],
.bizera24-form-shell input[type="email"],
.bizera24-form-shell input[type="tel"],
.bizera24-form-shell textarea{
  touch-action:auto!important;
  -webkit-tap-highlight-color:rgba(12,117,103,.08);
  caret-color:#011C3A;
}
@media (hover:none), (pointer:coarse){
  .bizera24-form-shell.is-open .bizera24-form-panel,
  html.bizera24-js .bizera24-form-shell.is-open > .bizera24-form-panel,
  html.bizera24-js .bizera24-form-shell.has-form-error > .bizera24-form-panel{
    animation:none!important;
    transform:none!important;
    transition:none!important;
  }
  .bizera24-form-shell input[type="text"],
  .bizera24-form-shell input[type="email"],
  .bizera24-form-shell input[type="tel"],
  .bizera24-form-shell textarea{
    font-size:16px!important;
    transform:none!important;
  }
}
