.efpaf2{min-height:100vh;display:flex;background:#fff;color:#111;font-family:inherit;--efpaf-input-bg:#fff;--efpaf-input-border:#d8d8d8;--efpaf-button-bg:#000;--efpaf-button-color:#fff;--efpaf-link-color:#111;--efpaf-error:#9b111e;--efpaf-ok:#116b35;--efpaf-panel-bg:#fff;--efpaf-field-height:42px;--efpaf-field-gap:14px;--efpaf-button-height:44px;--efpaf-form-width:460px}.efpaf2__visual{width:50%;min-height:100vh;background:#6f5a49 center/cover no-repeat;position:relative;color:#fff}.efpaf2__logo{position:absolute;top:54px;left:0;right:0;text-align:center;letter-spacing:.18em;font-size:24px}.efpaf2__tagline{position:absolute;bottom:90px;left:0;right:0;text-align:center;letter-spacing:.12em;font-size:26px;line-height:1.25}.efpaf2__panel{width:50%;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:48px;background:var(--efpaf-panel-bg)}.efpaf2__step{display:none;width:100%;max-width:var(--efpaf-form-width);text-align:center}.efpaf2__step.is-active{display:block}.efpaf2 h1{font-size:28px;line-height:1.25;font-weight:400;letter-spacing:.14em;text-transform:uppercase;margin:0 0 34px}.efpaf2 p{margin:0 0 22px}.efpaf2__benefits{display:grid;gap:8px;margin:0 0 42px}.efpaf2__field{height:var(--efpaf-field-height);display:flex;align-items:center;background:var(--efpaf-input-bg);border:1px solid var(--efpaf-input-border);margin:0 0 var(--efpaf-field-gap);text-align:left}.efpaf2__field label{width:38%;padding:0 16px;color:#777;font-size:13px;border-right:1px solid var(--efpaf-input-border)}.efpaf2__field input,.efpaf2__field select{border:0!important;background:transparent!important;box-shadow:none!important;outline:0!important;width:62%;height:100%;padding:0 16px;font:inherit;color:#111}.efpaf2 button,.efpaf2-generator button{width:100%;height:var(--efpaf-button-height);border:0;background:var(--efpaf-button-bg);color:var(--efpaf-button-color);cursor:pointer;font:inherit;margin:10px 0 18px;text-transform:none}.efpaf2 button:disabled,.efpaf2-generator button:disabled{opacity:.5;cursor:wait}.efpaf2__link{display:inline-block;color:var(--efpaf-link-color);text-decoration:none;border-bottom:1px solid currentColor;font-size:14px;margin:4px 0}.efpaf2__check{display:flex;align-items:center;gap:9px;text-align:left;margin:12px 0 14px;font-size:14px}.efpaf2__notice{background:#f7f4ef;padding:14px 18px;text-align:left;margin:0 0 18px}.efpaf2__msg{min-height:20px;color:var(--efpaf-error);font-size:13px;margin-top:8px}.efpaf2__msg.is-ok{color:var(--efpaf-ok)}.efpaf2__plans{display:grid;gap:10px;margin:0 0 12px;text-align:left}.efpaf2__plans label{height:42px;border:1px solid var(--efpaf-input-border);background:#fff;display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:8px;padding:0 14px;cursor:pointer;font-size:14px}.efpaf2__plans strong{font-weight:600}.efpaf2__card{min-height:42px;border:1px solid var(--efpaf-input-border);background:#fff;padding:12px 14px;margin:0 0 16px}.efpaf2__card .StripeElement{width:100%}.efpaf2-generator{max-width:460px;margin:0 auto;text-align:left;--efpaf-input-bg:#fff;--efpaf-input-border:#d8d8d8;--efpaf-button-bg:#000;--efpaf-button-color:#fff}.efpaf2-generator h2{text-align:center;font-weight:400;letter-spacing:.08em}.efpaf2-generator__step{display:none}.efpaf2-generator__step.is-active{display:block}.efpaf2-generator__result{font-size:22px;letter-spacing:.08em;text-align:center;margin:16px 0;word-break:break-word}.efpaf2-generator__result strong{display:block;font-size:20px;letter-spacing:.08em;margin:12px 0}.efpaf2-generator__result span{display:block;margin-bottom:12px}.efpaf2-cancel{max-width:520px}.efpaf2-cancel button{width:100%;min-height:48px;background:#000;color:#fff;border:0;cursor:pointer}.efpaf2-cancel .efpaf2__msg{margin-top:14px}.efpaf2-cancel .efpaf2__msg.is-success{color:#087a2a}.efpaf2-cancel .efpaf2__msg.is-error{color:#b00020}.efpaf2__step--login{max-width:460px;text-align:center}.efpaf2__step--login h1{font-size:30px;letter-spacing:.16em;line-height:1.28;margin-bottom:34px;text-transform:uppercase}.efpaf2__socials{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 24px}.efpaf2__socials .efpaf2__secondary{background:#7b6261;color:#fff;margin:0;height:42px;opacity:.92}.efpaf2__step--login .efpaf2__field{background:#fff;border:1px solid #d8d8d8;margin-bottom:12px}.efpaf2__step--login .efpaf2__field label{color:#999}.efpaf2__step--login button[data-action="member_login"]{height:44px;background:#000;color:#fff;margin:20px 0 20px}.efpaf2__step--login .efpaf2__link{font-size:14px;color:#111;border-bottom:1px solid currentColor;text-decoration:none;float:left;clear:left;margin:6px 0}.efpaf2__step--login .efpaf2__msg{clear:both;padding-top:16px}
@media(max-width:767px){.efpaf2{display:block;min-height:100vh}.efpaf2__visual{display:none!important}.efpaf2__panel{width:100%!important;min-height:100vh;padding:34px 22px;background:#fff}.efpaf2__step{max-width:100%}.efpaf2 h1{font-size:22px}.efpaf2__field{background:#fff}.efpaf2__field label{width:42%}.efpaf2__field input,.efpaf2__field select{width:58%}.efpaf2__plans label{grid-template-columns:22px 1fr;grid-auto-rows:auto;height:auto;min-height:44px}.efpaf2__plans strong{grid-column:2}.efpaf2__socials{grid-template-columns:1fr}}
.efpaf2__visual-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.efpaf2__visual:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none}.efpaf2__logo,.efpaf2__tagline{z-index:2}.efpaf2__logo img{display:inline-block;max-width:70%;height:auto}.efpaf2__back{display:block;width:max-content;color:var(--efpaf-link-color);text-decoration:none;border-bottom:1px solid currentColor;font-size:14px;margin:10px 0 0;text-align:left}.efpaf2__step{text-align:center}.efpaf2__step .efpaf2__back{float:left;clear:both}.efpaf2__step .efpaf2__msg{clear:both}
@media(max-width:767px){.efpaf2__back{margin-top:12px}.efpaf2__visual-video{display:none!important}}

/* 4.11 visual step transitions */
.efpaf2__visual{transition:opacity .24s ease, filter .24s ease, background-image .24s ease;overflow:hidden}
.efpaf2__visual.is-changing{opacity:.82;filter:blur(1.5px)}
.efpaf2__tagline{transition:opacity .2s ease, transform .24s ease}
.efpaf2__tagline.is-changing{opacity:0;transform:translateY(8px)}
.efpaf2__step.is-active{animation:efpafStepIn .32s ease both}
.efpaf2__step.is-leaving{display:block;animation:efpafStepOut .22s ease both;position:absolute;pointer-events:none}
@keyframes efpafStepIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes efpafStepOut{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-6px)}}
.efpaf2__benefits span{opacity:0;transform:translateY(8px);animation:efpafBenefitIn .38s ease forwards}
.efpaf2__benefits span:nth-child(1){animation-delay:.06s}.efpaf2__benefits span:nth-child(2){animation-delay:.14s}.efpaf2__benefits span:nth-child(3){animation-delay:.22s}.efpaf2__benefits span:nth-child(4){animation-delay:.30s}.efpaf2__benefits span:nth-child(5){animation-delay:.38s}.efpaf2__benefits span:nth-child(6){animation-delay:.46s}.efpaf2__benefits span:nth-child(7){animation-delay:.54s}.efpaf2__benefits span:nth-child(8){animation-delay:.62s}
@keyframes efpafBenefitIn{to{opacity:1;transform:translateY(0)}}
.efpaf2__link,.efpaf2__back{position:relative;border-bottom:0!important;text-decoration:none!important;display:inline-block}
.efpaf2__link:after,.efpaf2__back:after{content:"";position:absolute;left:0;right:auto;bottom:-2px;width:0;height:1px;background:currentColor;transition:width .28s ease}
.efpaf2__link:hover:after,.efpaf2__back:hover:after{width:100%}
.efpaf2 button{transition:opacity .22s ease, transform .22s ease, background-color .22s ease, color .22s ease}
.efpaf2 button:hover{transform:translateY(-1px)}
.efpaf2__phone-field label{width:34%}.efpaf2__phone-field select{width:25%!important;min-width:94px;border-right:1px solid var(--efpaf-input-border)!important;padding:0 8px!important}.efpaf2__phone-field input{width:41%!important}
@media(max-width:767px){.efpaf2__phone-field label{width:38%}.efpaf2__phone-field select{width:28%!important;min-width:78px}.efpaf2__phone-field input{width:34%!important;padding-left:8px!important}}
/* v4.14 visual/link fixes */
.efpaf2__visual-embed{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:0;pointer-events:none}
.efpaf2__visual-video{background:#000}
.efpaf2__links{display:flex;flex-direction:column;align-items:flex-start;text-align:left;margin-top:8px;width:100%;clear:both}
.efpaf2__links .efpaf2__link,.efpaf2__links .efpaf2__back{float:none;clear:none;margin:5px 0}
.efpaf2__link,.efpaf2__back{position:relative;border-bottom:0!important;text-decoration:none!important;overflow:hidden;padding-bottom:2px}
.efpaf2__link:after,.efpaf2__back:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left center;transition:transform .32s ease}
.efpaf2__link:hover:after,.efpaf2__back:hover:after{transform:scaleX(1)}
.efpaf2__benefits span{opacity:0;transform:translateY(8px);animation:efpafBenefitIn .42s ease forwards}
.efpaf2__benefits span:nth-child(1){animation-delay:.08s}.efpaf2__benefits span:nth-child(2){animation-delay:.16s}.efpaf2__benefits span:nth-child(3){animation-delay:.24s}.efpaf2__benefits span:nth-child(4){animation-delay:.32s}.efpaf2__benefits span:nth-child(5){animation-delay:.40s}.efpaf2__benefits span:nth-child(6){animation-delay:.48s}.efpaf2__benefits span:nth-child(7){animation-delay:.56s}.efpaf2__benefits span:nth-child(8){animation-delay:.64s}
@keyframes efpafBenefitIn{to{opacity:1;transform:translateY(0)}}
.efpaf2__tagline{transition:opacity .24s ease, transform .24s ease}.efpaf2__tagline.is-changing{opacity:.25;transform:translateY(4px)}
@media(max-width:767px){.efpaf2__visual-embed{display:none!important}.efpaf2__links{align-items:flex-start}}

/* v4.15 color + phone/reset visual polish */
:root{--efpaf-brand-muted:#785757}
.efpaf2{--efpaf-accent:#785757;--efpaf-error:#785757}
.efpaf2 a,.efpaf2__link,.efpaf2__back{color:#111}
.efpaf2__socials .efpaf2__secondary,.efpaf2 .efpaf2__secondary{background:#785757!important;color:#fff!important}
.efpaf2__msg{color:#785757}
.efpaf2__field input,.efpaf2__field select,.efpaf2__phone-combo input,.efpaf2__phone-combo select{background:#fff!important;color:#111!important}
.efpaf2__step--phone .efpaf2__phone-combo{height:66px;display:grid;grid-template-columns:105px 1fr;align-items:center;background:#fff;border:1px solid #d4d4d4;margin:0 0 24px;text-align:left;width:100%}
.efpaf2__step--phone .efpaf2__phone-combo select{height:100%;border:0!important;border-right:1px solid #d4d4d4!important;box-shadow:none!important;padding:0 20px!important;font-size:18px;appearance:auto!important;background:#fff!important;color:#777!important;outline:0!important}
.efpaf2__step--phone .efpaf2__phone-combo input{height:100%;border:0!important;box-shadow:none!important;outline:0!important;padding:0 24px!important;font-size:24px;letter-spacing:.12em;color:#111!important}
.efpaf2__terms-radio{font-size:21px!important;gap:16px!important;margin:18px 0 36px!important;align-items:center!important;color:#111!important}.efpaf2__terms-radio input{position:absolute;opacity:0;pointer-events:none}.efpaf2__terms-radio span{width:20px;height:20px;border:2px solid #111;border-radius:50%;display:inline-block;box-sizing:border-box;position:relative;flex:0 0 auto}.efpaf2__terms-radio input:checked+span:after{content:"";position:absolute;inset:4px;background:#111;border-radius:50%}.efpaf2__step--phone button[data-action="send_phone_code"]{height:66px;font-size:19px;margin-top:0}.efpaf2__step--phone h1{font-size:42px;line-height:1.32;letter-spacing:.16em;margin-bottom:54px}
.efpaf2__step--reset,.efpaf2__step--reset-done{max-width:340px!important;text-align:left!important}.efpaf2__step--reset h1,.efpaf2__step--reset-done h1{text-align:center!important;font-size:30px!important;line-height:1.28!important;letter-spacing:.15em!important;margin:0 0 34px!important}.efpaf2__reset-field{border-color:#43824b!important;margin-bottom:0!important}.efpaf2__password-strength{height:32px;background:#4f8154;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;margin:0 0 20px}.efpaf2__step--reset .efpaf2__secondary{height:40px!important;margin:0 0 10px!important;background:#785757!important}.efpaf2__step--reset button[data-action="reset_password"]{height:40px!important;margin:0 0 26px!important}.efpaf2__step--reset .efpaf2__links{align-items:flex-start!important}.efpaf2__step--reset-done{text-align:center!important}.efpaf2__step--reset-done button{height:42px!important;margin-top:6px!important}
@media(max-width:767px){.efpaf2__step--phone h1{font-size:34px}.efpaf2__step--phone .efpaf2__phone-combo{height:64px;grid-template-columns:105px 1fr}.efpaf2__step--phone .efpaf2__phone-combo input{font-size:22px}.efpaf2__terms-radio{font-size:20px!important}.efpaf2__step--reset,.efpaf2__step--reset-done{max-width:100%!important}.efpaf2__step--reset h1,.efpaf2__step--reset-done h1{font-size:30px!important}}


/* v4.16: restore inherited form style for phone + softer password reset */
.efpaf2__step--phone h1{
  font-size:28px!important;
  line-height:1.25!important;
  letter-spacing:.14em!important;
  margin:0 0 34px!important;
}
.efpaf2__step--phone .efpaf2__phone-combo{
  height:var(--efpaf-field-height)!important;
  display:grid!important;
  grid-template-columns:105px 1fr!important;
  align-items:center!important;
  background:var(--efpaf-input-bg)!important;
  border:1px solid var(--efpaf-input-border)!important;
  margin:0 0 var(--efpaf-field-gap)!important;
  text-align:left!important;
  width:100%!important;
}
.efpaf2__step--phone .efpaf2__phone-combo select{
  height:100%!important;
  border:0!important;
  border-right:1px solid var(--efpaf-input-border)!important;
  box-shadow:none!important;
  outline:0!important;
  padding:0 16px!important;
  font:inherit!important;
  font-size:14px!important;
  letter-spacing:normal!important;
  background:#fff!important;
  color:#111!important;
  appearance:auto!important;
}
.efpaf2__step--phone .efpaf2__phone-combo input{
  height:100%!important;
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
  padding:0 16px!important;
  font:inherit!important;
  font-size:14px!important;
  letter-spacing:normal!important;
  color:#111!important;
  background:#fff!important;
}
.efpaf2__step--phone .efpaf2__phone-combo input::placeholder{
  color:#999!important;
  letter-spacing:normal!important;
}
.efpaf2__terms-radio{
  font-size:14px!important;
  gap:9px!important;
  margin:12px 0 14px!important;
  align-items:center!important;
  color:#111!important;
}
.efpaf2__terms-radio span{
  width:16px!important;
  height:16px!important;
  border:1px solid #111!important;
  border-radius:50%!important;
}
.efpaf2__terms-radio input:checked+span:after{
  inset:4px!important;
  background:#111!important;
}
.efpaf2__step--phone button[data-action="send_phone_code"]{
  height:var(--efpaf-button-height)!important;
  font-size:inherit!important;
  margin:10px 0 18px!important;
}
.efpaf2__step--reset,
.efpaf2__step--reset-done{
  max-width:var(--efpaf-form-width)!important;
  text-align:center!important;
}
.efpaf2__step--reset h1,
.efpaf2__step--reset-done h1{
  text-align:center!important;
  font-size:28px!important;
  line-height:1.25!important;
  letter-spacing:.14em!important;
  margin:0 0 34px!important;
}
.efpaf2__reset-field{
  border-color:var(--efpaf-input-border)!important;
  margin:0 0 var(--efpaf-field-gap)!important;
}
.efpaf2__password-strength{
  display:none!important;
}
.efpaf2__step--reset .efpaf2__secondary{
  height:var(--efpaf-button-height)!important;
  margin:10px 0 10px!important;
  background:#785757!important;
}
.efpaf2__step--reset button[data-action="reset_password"]{
  height:var(--efpaf-button-height)!important;
  margin:10px 0 18px!important;
}
.efpaf2__step--reset .efpaf2__links{
  align-items:flex-start!important;
}
@media(max-width:767px){
  .efpaf2__step--phone h1,
  .efpaf2__step--reset h1,
  .efpaf2__step--reset-done h1{font-size:22px!important;}
  .efpaf2__step--phone .efpaf2__phone-combo{grid-template-columns:96px 1fr!important;}
}


/* v4.17: refined phone country selector alignment */
.efpaf2__step--phone .efpaf2__phone-combo{
  position:relative!important;
  overflow:visible!important;
  border-radius:0!important;
  grid-template-columns:112px 1fr!important;
}
.efpaf2__step--phone .efpaf2__phone-combo:before{
  content:"";
  position:absolute;
  left:112px;
  top:10px;
  bottom:10px;
  width:1px;
  background:var(--efpaf-input-border)!important;
  pointer-events:none;
  z-index:2;
}
.efpaf2__step--phone .efpaf2__phone-combo select{
  border-right:0!important;
  border-radius:0!important;
  padding:0 38px 0 18px!important;
  min-width:112px!important;
  width:112px!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  -moz-appearance:none!important;
  background-color:#fff!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='8' viewBox='0 0 14 8'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%23111' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;
  background-position:right 18px center!important;
  background-size:14px 8px!important;
  color:#111!important;
}
.efpaf2__step--phone .efpaf2__phone-combo select::-ms-expand{display:none!important;}
.efpaf2__step--phone .efpaf2__phone-combo input{
  padding:0 16px 0 22px!important;
  border-radius:0!important;
}
@media(max-width:767px){
  .efpaf2__step--phone .efpaf2__phone-combo{grid-template-columns:104px 1fr!important;}
  .efpaf2__step--phone .efpaf2__phone-combo:before{left:104px;top:10px;bottom:10px;}
  .efpaf2__step--phone .efpaf2__phone-combo select{min-width:104px!important;width:104px!important;padding-left:16px!important;padding-right:34px!important;background-position:right 16px center!important;}
  .efpaf2__step--phone .efpaf2__phone-combo input{padding-left:18px!important;}
}

/* v4.18: payment notice + elegant plan dropdown */
.efpaf2__plan-select{height:var(--efpaf-field-height);border:1px solid var(--efpaf-input-border);background:#fff;margin:0 0 var(--efpaf-field-gap);position:relative;text-align:left;overflow:hidden;}
.efpaf2__plan-select:after{content:"";position:absolute;right:18px;top:50%;width:8px;height:8px;border-right:1px solid #111;border-bottom:1px solid #111;transform:translateY(-65%) rotate(45deg);pointer-events:none;opacity:.8;}
.efpaf2__plan-select select{width:100%;height:100%;border:0!important;background:transparent!important;box-shadow:none!important;outline:0!important;color:#111!important;font:inherit;padding:0 48px 0 16px!important;appearance:none;-webkit-appearance:none;cursor:pointer;}
.efpaf2__notice{font:inherit;color:#111;}
@media(max-width:767px){.efpaf2__plan-select select{padding-left:14px!important;padding-right:44px!important;}}

/* 4.19 payment notice tooltip */
.efpaf2__notice{display:flex;align-items:center;justify-content:space-between;gap:14px;position:relative;min-height:48px;box-sizing:border-box;}
.efpaf2__notice .efpaf2__info{width:24px;height:24px;border:1px solid #9d9d9d;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:15px;line-height:1;color:#777;font-style:normal;cursor:help;flex:0 0 24px;background:transparent;}
.efpaf2__notice .efpaf2__info:after{content:attr(aria-label);position:absolute;right:0;top:calc(100% + 8px);width:min(280px, calc(100vw - 40px));background:#111;color:#fff;padding:12px 14px;border-radius:0;font-size:12px;line-height:1.45;letter-spacing:0;text-transform:none;text-align:left;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .18s ease, transform .18s ease, visibility .18s ease;z-index:20;box-shadow:0 8px 24px rgba(0,0,0,.14);}
.efpaf2__notice .efpaf2__info:hover:after,.efpaf2__notice .efpaf2__info:focus:after{opacity:1;visibility:visible;transform:translateY(0);}

/* v4.22 mobile/app-like UX + custom plan picker */
.efpaf2 select{appearance:none;-webkit-appearance:none;-moz-appearance:none;border-radius:0;background-color:transparent}
.efpaf2__phone-combo select{background-image:linear-gradient(45deg,transparent 50%,#111 50%),linear-gradient(135deg,#111 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:34px!important}
.efpaf2__plan-picker{position:relative;margin:0 0 12px;text-align:left}.efpaf2__plan-trigger{width:100%;height:42px;margin:0 0 12px!important;padding:0 14px!important;border:1px solid var(--efpaf-input-border)!important;background:#fff!important;color:#111!important;display:grid!important;grid-template-columns:1fr auto 18px;align-items:center;gap:10px;text-align:left;box-shadow:none!important;transform:none!important}.efpaf2__plan-trigger strong{font-weight:600}.efpaf2__plan-trigger i{position:relative;width:14px;height:14px}.efpaf2__plan-trigger i:before,.efpaf2__plan-trigger i:after{content:"";position:absolute;top:6px;width:8px;height:1px;background:#111}.efpaf2__plan-trigger i:before{left:0;transform:rotate(45deg)}.efpaf2__plan-trigger i:after{right:0;transform:rotate(-45deg)}.efpaf2__plan-menu{position:absolute;z-index:50;top:46px;left:0;right:0;background:#fff;border:1px solid var(--efpaf-input-border);box-shadow:0 14px 36px rgba(0,0,0,.08);display:none}.efpaf2__plan-picker.is-open .efpaf2__plan-menu{display:block}.efpaf2__plan-menu button,.efpaf2__plan-sheet-panel button{width:100%;height:46px;margin:0!important;padding:0 14px!important;border:0!important;border-bottom:1px solid #eee!important;background:#fff!important;color:#111!important;display:flex!important;justify-content:space-between;align-items:center;text-align:left;transform:none!important}.efpaf2__plan-menu button:hover,.efpaf2__plan-sheet-panel button:hover,.efpaf2__plan-menu button.is-selected,.efpaf2__plan-sheet-panel button.is-selected{background:#f7f4ef!important}.efpaf2__plan-sheet{display:none}.efpaf2__notice{display:flex;align-items:center;justify-content:space-between;gap:14px}.efpaf2__info{flex:0 0 auto}
@media(max-width:767px){
  html{touch-action:manipulation;-webkit-text-size-adjust:100%}
  body:has(.efpaf2){overflow:hidden!important;overscroll-behavior:none}
  .efpaf2,.efpaf2 *{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
  .efpaf2{width:100%;height:100svh!important;min-height:100svh!important;overflow:hidden!important;display:block;background:#fff}
  .efpaf2__panel{width:100%!important;height:100svh!important;min-height:100svh!important;overflow:hidden!important;padding:15px!important;display:flex!important;align-items:center!important;justify-content:center!important;background:#fff}
  .efpaf2__step{width:100%!important;max-width:calc(100vw - 30px)!important;margin:0 auto!important;text-align:center;overflow:visible!important}
  .efpaf2 h1{font-size:clamp(24px,7.2vw,34px)!important;line-height:1.24!important;margin:0 0 26px!important;letter-spacing:.13em!important}
  .efpaf2 p{font-size:14px!important;margin-bottom:14px!important}
  .efpaf2__benefits{gap:6px!important;margin-bottom:28px!important;font-size:13px!important}
  .efpaf2__field,.efpaf2__phone-combo,.efpaf2__plan-trigger,.efpaf2__card{height:58px!important;min-height:58px!important;margin-bottom:10px!important;background:#fff!important;border:1px solid var(--efpaf-input-border)!important}
  .efpaf2__field label{height:100%;display:flex;align-items:center;font-size:13px!important;padding:0 14px!important}
  .efpaf2__field input,.efpaf2__field select,.efpaf2__phone-combo input,.efpaf2__phone-combo select{height:100%!important;font-size:16px!important;line-height:1!important;padding:0 14px!important;outline:0!important;box-shadow:none!important}
  .efpaf2 button{height:58px!important;min-height:58px!important;margin:12px 0 12px!important;font-size:15px!important}
  .efpaf2__socials .efpaf2__secondary{height:52px!important;min-height:52px!important}
  .efpaf2__check{font-size:14px!important;margin:10px 0 12px!important;gap:9px!important}
  .efpaf2__links{margin-top:4px!important;font-size:14px!important}
  .efpaf2__notice{min-height:58px!important;padding:0 16px!important;margin-bottom:10px!important;font-size:15px!important}
  .efpaf2__phone-combo{display:grid!important;grid-template-columns:106px 1fr!important;align-items:center!important;overflow:hidden!important}
  .efpaf2__phone-combo select{width:100%!important;border:0!important;border-right:1px solid var(--efpaf-input-border)!important;background-position:calc(100% - 21px) 50%,calc(100% - 16px) 50%!important;padding-left:18px!important;padding-right:42px!important;text-align:left!important}
  .efpaf2__phone-combo input{width:100%!important;border:0!important;background:#fff!important}
  .efpaf2__plan-menu{display:none!important}.efpaf2__plan-trigger{grid-template-columns:1fr auto 20px!important;padding:0 16px!important}
  .efpaf2__plan-sheet{display:block;position:fixed;inset:0;z-index:999999;pointer-events:none;opacity:0;transition:opacity .22s ease}.efpaf2__plan-picker.sheet-open .efpaf2__plan-sheet{pointer-events:auto;opacity:1}.efpaf2__plan-sheet-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.24);opacity:0;transition:opacity .22s ease}.efpaf2__plan-picker.sheet-open .efpaf2__plan-sheet-backdrop{opacity:1}.efpaf2__plan-sheet-panel{position:absolute;left:0;right:0;bottom:0;background:#fff;border-radius:18px 18px 0 0;padding:10px 15px max(22px,env(safe-area-inset-bottom));transform:translateY(105%);transition:transform .28s ease;box-shadow:0 -18px 48px rgba(0,0,0,.18);max-height:55svh;overflow:auto}.efpaf2__plan-picker.sheet-open .efpaf2__plan-sheet-panel{transform:translateY(0)}.efpaf2__plan-sheet-handle{width:38px;height:3px;border-radius:99px;background:#d4d4d4;margin:0 auto 14px}.efpaf2__plan-sheet-title{text-align:center;font-size:13px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;color:#785757}.efpaf2__plan-sheet-panel button{height:56px!important;min-height:56px!important;margin:0!important;font-size:15px!important}.efpaf2__plan-sheet-panel strong{font-weight:600}.efpaf2__card{padding:19px 14px!important}
  .efpaf2__step[data-step="create"] h1,.efpaf2__step[data-step="payment"] h1,.efpaf2__step[data-step="phone_verify"] h1,.efpaf2__step[data-step="email"] h1{margin-bottom:18px!important;font-size:clamp(22px,6.4vw,30px)!important}
  .efpaf2__step[data-step="create"] .efpaf2__field{margin-bottom:7px!important}.efpaf2__step[data-step="create"] button{margin-top:8px!important}
  .efpaf2__step--login h1{font-size:clamp(24px,7vw,32px)!important;margin-bottom:24px!important}.efpaf2__step--login .efpaf2__field{margin-bottom:9px!important}.efpaf2__step--login button[data-action="member_login"]{margin:12px 0!important}
}


/* v4.24: strict mobile 100vh app screen, no page scroll/zoom */
@media(max-width:767px){
  html:has(.efpaf2),
  body:has(.efpaf2){
    width:100%!important;
    height:100%!important;
    min-height:100%!important;
    overflow:hidden!important;
    overscroll-behavior:none!important;
    -webkit-overflow-scrolling:auto!important;
    touch-action:manipulation!important;
    position:relative!important;
  }
  body:has(.efpaf2) .site,
  body:has(.efpaf2) .site-content,
  body:has(.efpaf2) .entry-content,
  body:has(.efpaf2) .elementor,
  body:has(.efpaf2) .elementor-section,
  body:has(.efpaf2) .elementor-container,
  body:has(.efpaf2) .elementor-widget-container{
    min-height:100dvh!important;
    height:100dvh!important;
    overflow:hidden!important;
  }
  .efpaf2{
    --efpaf-field-height:58px!important;
    --efpaf-button-height:58px!important;
    width:100vw!important;
    height:100dvh!important;
    min-height:100dvh!important;
    max-height:100dvh!important;
    overflow:hidden!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:0!important;
    margin:0!important;
  }
  @supports(height:100svh){
    .efpaf2,
    .efpaf2__panel{
      height:100svh!important;
      min-height:100svh!important;
      max-height:100svh!important;
    }
  }
  .efpaf2__panel{
    width:100vw!important;
    height:100dvh!important;
    min-height:100dvh!important;
    max-height:100dvh!important;
    overflow:hidden!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:15px!important;
    margin:0!important;
  }
  .efpaf2__step{
    width:100%!important;
    max-width:calc(100vw - 30px)!important;
    max-height:calc(100dvh - 30px)!important;
    overflow:hidden!important;
    margin:0 auto!important;
    padding:0!important;
  }
  @supports(height:100svh){
    .efpaf2__step{max-height:calc(100svh - 30px)!important;}
  }
  .efpaf2__step.is-active{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
  }
  .efpaf2__step h1,
  .efpaf2__step--login h1{
    font-size:clamp(22px,6.2vw,30px)!important;
    line-height:1.22!important;
    margin:0 0 22px!important;
  }
  .efpaf2__benefits{margin-bottom:22px!important;}
  .efpaf2__field,
  .efpaf2__phone-combo,
  .efpaf2__plan-trigger,
  .efpaf2__card{
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
    margin-bottom:10px!important;
  }
  .efpaf2 button,
  .efpaf2__step--login button[data-action="member_login"],
  .efpaf2__step--phone button[data-action="send_phone_code"]{
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
    margin:10px 0!important;
  }
  .efpaf2 input,
  .efpaf2 select,
  .efpaf2 textarea,
  .efpaf2 button{
    font-size:16px!important;
    -webkit-text-size-adjust:100%!important;
  }
  .efpaf2__field label{font-size:13px!important;}
  .efpaf2__links{margin-top:4px!important;gap:2px!important;}
  .efpaf2__links .efpaf2__link,
  .efpaf2__links .efpaf2__back{margin:3px 0!important;}
  .efpaf2__msg{min-height:16px!important;margin-top:4px!important;}
  .efpaf2__notice{height:58px!important;min-height:58px!important;margin-bottom:10px!important;}
  .efpaf2__plan-sheet{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    overflow:hidden!important;
  }
  .efpaf2__plan-sheet-panel{
    max-height:52dvh!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
  }
}

/* v4.25 final mobile app layout: fixed 100vh, no body scroll, no zoom, centered form */
@media (max-width: 767px){
  html.efpaf2-html-lock,
  body.efpaf2-mobile-lock{
    width:100%!important;
    height:var(--efpaf-vh,100dvh)!important;
    max-height:var(--efpaf-vh,100dvh)!important;
    overflow:hidden!important;
    overscroll-behavior:none!important;
    -webkit-text-size-adjust:100%!important;
    touch-action:manipulation!important;
    margin:0!important;
    padding:0!important;
  }
  body.efpaf2-mobile-lock{
    position:fixed!important;
    inset:0!important;
  }
  body.efpaf2-mobile-lock #page,
  body.efpaf2-mobile-lock .site,
  body.efpaf2-mobile-lock .site-content,
  body.efpaf2-mobile-lock .content-area,
  body.efpaf2-mobile-lock main,
  body.efpaf2-mobile-lock article,
  body.efpaf2-mobile-lock .entry-content,
  body.efpaf2-mobile-lock .elementor,
  body.efpaf2-mobile-lock .elementor-section,
  body.efpaf2-mobile-lock .elementor-container,
  body.efpaf2-mobile-lock .elementor-column,
  body.efpaf2-mobile-lock .elementor-widget,
  body.efpaf2-mobile-lock .elementor-widget-container{
    height:var(--efpaf-vh,100dvh)!important;
    min-height:var(--efpaf-vh,100dvh)!important;
    max-height:var(--efpaf-vh,100dvh)!important;
    overflow:hidden!important;
    margin:0!important;
  }
  .efpaf2{
    position:fixed!important;
    inset:0!important;
    z-index:2147483000!important;
    width:100vw!important;
    height:var(--efpaf-vh,100dvh)!important;
    min-height:var(--efpaf-vh,100dvh)!important;
    max-height:var(--efpaf-vh,100dvh)!important;
    overflow:hidden!important;
    background:#fff!important;
    padding:0!important;
    margin:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .efpaf2__visual{display:none!important;}
  .efpaf2__panel{
    width:100vw!important;
    height:var(--efpaf-vh,100dvh)!important;
    min-height:var(--efpaf-vh,100dvh)!important;
    max-height:var(--efpaf-vh,100dvh)!important;
    overflow:hidden!important;
    padding:15px!important;
    margin:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:#fff!important;
  }
  .efpaf2__step{
    width:100%!important;
    max-width:calc(100vw - 30px)!important;
    max-height:calc(var(--efpaf-vh,100dvh) - 30px)!important;
    margin:0 auto!important;
    padding:0!important;
    overflow:hidden!important;
    text-align:center!important;
  }
  .efpaf2__step.is-active{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
  }
  .efpaf2__step:not(.is-active){display:none!important;}
  .efpaf2 h1,
  .efpaf2__step--login h1,
  .efpaf2__step--phone h1,
  .efpaf2__step--reset h1,
  .efpaf2__step--reset-done h1{
    font-size:clamp(22px,6.2vw,30px)!important;
    line-height:1.22!important;
    letter-spacing:.13em!important;
    margin:0 0 22px!important;
  }
  .efpaf2 p{font-size:14px!important;line-height:1.45!important;margin:0 0 14px!important;}
  .efpaf2__benefits{margin:0 0 22px!important;gap:5px!important;font-size:13px!important;}
  .efpaf2__field,
  .efpaf2__phone-combo,
  .efpaf2__plan-trigger,
  .efpaf2__card,
  .efpaf2__notice{
    width:100%!important;
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
    margin:0 0 10px!important;
    background:#fff!important;
    border:1px solid var(--efpaf-input-border,#d8d8d8)!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  .efpaf2__notice{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:0 16px!important;background:#f7f4ef!important;}
  .efpaf2__field{display:flex!important;align-items:center!important;}
  .efpaf2__field label{
    flex:0 0 38%!important;
    width:38%!important;
    height:100%!important;
    display:flex!important;
    align-items:center!important;
    padding:0 14px!important;
    font-size:13px!important;
    color:#8b8b8b!important;
    border-right:1px solid var(--efpaf-input-border,#d8d8d8)!important;
  }
  .efpaf2__field input,
  .efpaf2__field select,
  .efpaf2__field textarea,
  .efpaf2__phone-combo input,
  .efpaf2__phone-combo select{
    flex:1 1 auto!important;
    width:auto!important;
    min-width:0!important;
    height:100%!important;
    min-height:58px!important;
    max-height:58px!important;
    padding:0 14px!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    background:#fff!important;
    box-shadow:none!important;
    outline:0!important;
    font-size:16px!important;
    line-height:58px!important;
    color:#111!important;
    -webkit-appearance:none!important;
    appearance:none!important;
  }
  .efpaf2 button,
  .efpaf2__step--login button[data-action="member_login"],
  .efpaf2__step--phone button[data-action="send_phone_code"],
  .efpaf2 [data-action="finalize_subscription"]{
    width:100%!important;
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
    margin:10px 0!important;
    padding:0 14px!important;
    font-size:16px!important;
    line-height:58px!important;
    border-radius:0!important;
    transform:none!important;
  }
  .efpaf2__phone-combo{
    display:grid!important;
    grid-template-columns:104px 1fr!important;
    align-items:center!important;
    overflow:hidden!important;
  }
  .efpaf2__phone-combo select{
    width:104px!important;
    min-width:104px!important;
    padding:0 42px 0 18px!important;
    border-right:1px solid var(--efpaf-input-border,#d8d8d8)!important;
    background-image:linear-gradient(45deg,transparent 50%,#111 50%),linear-gradient(135deg,#111 50%,transparent 50%)!important;
    background-position:calc(100% - 23px) 50%,calc(100% - 17px) 50%!important;
    background-size:6px 6px,6px 6px!important;
    background-repeat:no-repeat!important;
  }
  .efpaf2__phone-combo input{width:100%!important;border:0!important;padding-left:22px!important;}
  .efpaf2__check{font-size:14px!important;line-height:1.2!important;margin:9px 0 12px!important;gap:9px!important;text-align:left!important;}
  .efpaf2__check span{width:18px!important;height:18px!important;min-width:18px!important;}
  .efpaf2__links{width:100%!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:3px!important;margin:4px 0 0!important;text-align:left!important;}
  .efpaf2__link,.efpaf2__back{font-size:14px!important;line-height:1.35!important;margin:2px 0!important;}
  .efpaf2__msg{min-height:16px!important;margin:4px 0 0!important;font-size:13px!important;}
  .efpaf2__plan-menu{display:none!important;}
  .efpaf2__plan-trigger{display:grid!important;grid-template-columns:1fr auto 20px!important;align-items:center!important;text-align:left!important;padding:0 16px!important;background:#fff!important;color:#111!important;}
  .efpaf2__plan-sheet{
    position:fixed!important;
    inset:0!important;
    z-index:2147483640!important;
    width:100vw!important;
    height:var(--efpaf-vh,100dvh)!important;
    overflow:hidden!important;
  }
  .efpaf2__plan-sheet-panel{
    max-height:min(56vh,420px)!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    padding:10px 15px calc(22px + env(safe-area-inset-bottom))!important;
  }
  .efpaf2__plan-sheet-panel button{height:56px!important;min-height:56px!important;line-height:1.2!important;margin:0!important;}
}
@media (max-width:767px) and (max-height:700px){
  .efpaf2 h1,.efpaf2__step--login h1,.efpaf2__step--phone h1{font-size:clamp(20px,5.4vw,26px)!important;margin-bottom:16px!important;}
  .efpaf2__benefits{margin-bottom:16px!important;}
  .efpaf2__field,.efpaf2__phone-combo,.efpaf2__plan-trigger,.efpaf2__card,.efpaf2__notice{margin-bottom:7px!important;}
  .efpaf2 button{margin:7px 0!important;}
}


/* v4.26 hard iOS mobile app lock: no Safari zoom, no page scroll, true centered viewport */
@media (max-width: 767px){
  html:has(.efpaf2),
  body:has(.efpaf2),
  html.efpaf2-html-lock,
  body.efpaf2-mobile-lock{
    width:100vw!important;
    height:var(--efpaf-vh,100svh)!important;
    min-height:var(--efpaf-vh,100svh)!important;
    max-height:var(--efpaf-vh,100svh)!important;
    overflow:hidden!important;
    overscroll-behavior:none!important;
    -webkit-overflow-scrolling:auto!important;
    -webkit-text-size-adjust:100%!important;
    touch-action:none!important;
    position:fixed!important;
    inset:0!important;
    margin:0!important;
    padding:0!important;
  }
  body.efpaf2-mobile-lock #wpadminbar{display:none!important;}
  body.efpaf2-mobile-lock .site-header,
  body.efpaf2-mobile-lock header.site-header,
  body.efpaf2-mobile-lock .elementor-location-header{display:none!important;}
  body:has(.efpaf2) #page,
  body:has(.efpaf2) .site,
  body:has(.efpaf2) .site-content,
  body:has(.efpaf2) .content-area,
  body:has(.efpaf2) main,
  body:has(.efpaf2) article,
  body:has(.efpaf2) .entry-content,
  body:has(.efpaf2) .elementor,
  body:has(.efpaf2) .elementor-section,
  body:has(.efpaf2) .elementor-container,
  body:has(.efpaf2) .elementor-column,
  body:has(.efpaf2) .elementor-widget,
  body:has(.efpaf2) .elementor-widget-container,
  body.efpaf2-mobile-lock #page,
  body.efpaf2-mobile-lock .site,
  body.efpaf2-mobile-lock .site-content,
  body.efpaf2-mobile-lock .content-area,
  body.efpaf2-mobile-lock main,
  body.efpaf2-mobile-lock article,
  body.efpaf2-mobile-lock .entry-content,
  body.efpaf2-mobile-lock .elementor,
  body.efpaf2-mobile-lock .elementor-section,
  body.efpaf2-mobile-lock .elementor-container,
  body.efpaf2-mobile-lock .elementor-column,
  body.efpaf2-mobile-lock .elementor-widget,
  body.efpaf2-mobile-lock .elementor-widget-container{
    width:100vw!important;
    height:var(--efpaf-vh,100svh)!important;
    min-height:var(--efpaf-vh,100svh)!important;
    max-height:var(--efpaf-vh,100svh)!important;
    overflow:hidden!important;
    margin:0!important;
    padding:0!important;
  }
  .efpaf2{
    position:fixed!important;
    inset:0!important;
    z-index:2147483000!important;
    width:100vw!important;
    height:var(--efpaf-vh,100svh)!important;
    min-height:var(--efpaf-vh,100svh)!important;
    max-height:var(--efpaf-vh,100svh)!important;
    overflow:hidden!important;
    overscroll-behavior:none!important;
    background:#fff!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .efpaf2__visual{display:none!important;}
  .efpaf2__panel{
    width:100vw!important;
    height:var(--efpaf-vh,100svh)!important;
    min-height:var(--efpaf-vh,100svh)!important;
    max-height:var(--efpaf-vh,100svh)!important;
    overflow:hidden!important;
    background:#fff!important;
    padding:15px!important;
    margin:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .efpaf2__step{
    width:100%!important;
    max-width:calc(100vw - 30px)!important;
    max-height:calc(var(--efpaf-vh,100svh) - 30px)!important;
    overflow:hidden!important;
    margin:0 auto!important;
    padding:0!important;
    text-align:center!important;
    box-sizing:border-box!important;
  }
  .efpaf2__step.is-active{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:stretch!important;
  }
  .efpaf2 h1,
  .efpaf2__step--login h1,
  .efpaf2__step--phone h1,
  .efpaf2__step--reset h1,
  .efpaf2__step--reset-done h1{
    width:100%!important;
    max-width:100%!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    white-space:normal!important;
    font-size:clamp(23px,7.2vw,32px)!important;
    line-height:1.25!important;
    letter-spacing:.16em!important;
    margin:0 0 24px!important;
    transform:none!important;
  }
  .efpaf2__step[data-step="code"] h1,
  .efpaf2__step[data-step="reset_password"] h1,
  .efpaf2__step[data-step="reset_done"] h1{font-size:clamp(24px,7.4vw,34px)!important;}
  .efpaf2__benefits{margin:0 0 30px!important;gap:7px!important;font-size:16px!important;line-height:1.35!important;}
  .efpaf2__field,
  .efpaf2__phone-combo,
  .efpaf2__plan-trigger,
  .efpaf2__card,
  .efpaf2__notice{
    width:100%!important;
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
    margin:0 0 12px!important;
    box-sizing:border-box!important;
    background:#fff!important;
    border:1px solid var(--efpaf-input-border,#d8d8d8)!important;
    border-radius:0!important;
  }
  .efpaf2 button,
  .efpaf2 [data-action],
  .efpaf2__step--login button[data-action="member_login"]{
    width:100%!important;
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
    margin:12px 0 16px!important;
    font-size:16px!important;
    line-height:58px!important;
    letter-spacing:.02em!important;
    transform:none!important;
    box-sizing:border-box!important;
  }
  .efpaf2 input,
  .efpaf2 select,
  .efpaf2 textarea,
  .efpaf2 button{
    font-size:16px!important;
    line-height:normal!important;
    -webkit-text-size-adjust:100%!important;
    -webkit-appearance:none!important;
    appearance:none!important;
    touch-action:manipulation!important;
  }
  .efpaf2 input:focus,
  .efpaf2 select:focus,
  .efpaf2 textarea:focus{
    font-size:16px!important;
    outline:0!important;
    transform:none!important;
  }
  .efpaf2__field label{font-size:16px!important;line-height:1!important;}
  .efpaf2__links{width:100%!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:10px!important;text-align:left!important;margin:6px 0 0!important;}
  .efpaf2__link,.efpaf2__back{font-size:16px!important;line-height:1.2!important;margin:0!important;text-align:left!important;}
  .efpaf2__msg{min-height:16px!important;margin:4px 0 0!important;}
  .efpaf2__check{font-size:16px!important;line-height:1.2!important;margin:10px 0 16px!important;}
  .efpaf2__plan-sheet{position:fixed!important;inset:0!important;width:100vw!important;height:var(--efpaf-vh,100svh)!important;overflow:hidden!important;z-index:2147483640!important;overscroll-behavior:none!important;}
  .efpaf2__plan-sheet-panel{max-height:58vh!important;overflow-y:auto!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;}
}
@media (max-width:767px) and (max-height:700px){
  .efpaf2 h1,.efpaf2__step--login h1,.efpaf2__step--phone h1{font-size:clamp(21px,6.4vw,29px)!important;margin-bottom:18px!important;}
  .efpaf2__benefits{margin-bottom:20px!important;font-size:15px!important;}
  .efpaf2__field,.efpaf2__phone-combo,.efpaf2__plan-trigger,.efpaf2__card,.efpaf2__notice{margin-bottom:8px!important;}
  .efpaf2 button,.efpaf2 [data-action]{margin:8px 0 12px!important;}
}


/* v4.27 mobile compact inputs: no split labels/masks, full tappable input area */
@media (max-width: 767px){
  .efpaf2__field{
    display:block!important;
    position:relative!important;
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
    overflow:hidden!important;
  }
  .efpaf2__field label{
    display:none!important;
    width:0!important;
    min-width:0!important;
    flex:0 0 0!important;
    padding:0!important;
    border:0!important;
  }
  .efpaf2__field input,
  .efpaf2__field select,
  .efpaf2__field textarea{
    display:block!important;
    width:100%!important;
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
    padding:0 14px!important;
    border:0!important;
    background:#fff!important;
    font-size:16px!important;
    line-height:58px!important;
    text-align:left!important;
  }
  .efpaf2__field input::placeholder,
  .efpaf2__field textarea::placeholder{
    color:#999!important;
    opacity:1!important;
  }
  .efpaf2__phone-combo{
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
    grid-template-columns:92px 1fr!important;
  }
  .efpaf2__phone-combo select{
    width:92px!important;
    min-width:92px!important;
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
    padding:0 34px 0 14px!important;
    line-height:58px!important;
    font-size:16px!important;
    background-position:calc(100% - 19px) 50%,calc(100% - 14px) 50%!important;
  }
  .efpaf2__phone-combo input{
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
    padding:0 14px!important;
    line-height:58px!important;
    font-size:16px!important;
  }
  .efpaf2__step[data-step="create"] .efpaf2__field,
  .efpaf2__step[data-step="login"] .efpaf2__field,
  .efpaf2__step[data-step="forgot"] .efpaf2__field,
  .efpaf2__step[data-step="reset_password"] .efpaf2__field,
  .efpaf2__step[data-step="email"] .efpaf2__field,
  .efpaf2__step[data-step="phone_verify"] .efpaf2__field,
  .efpaf2__step[data-step="code"] .efpaf2__field{
    margin-bottom:10px!important;
  }
}

/* v4.28 real mobile app shell: detach from Elementor scroll, lock page, manage keyboard viewport */
@media (max-width: 767px){
  html.efpaf2-app-lock,
  body.efpaf2-app-lock{
    width:100vw!important;
    height:var(--efpaf-app-h,100dvh)!important;
    min-height:var(--efpaf-app-h,100dvh)!important;
    max-height:var(--efpaf-app-h,100dvh)!important;
    overflow:hidden!important;
    overscroll-behavior:none!important;
    -webkit-overflow-scrolling:auto!important;
    -webkit-text-size-adjust:100%!important;
    touch-action:none!important;
    margin:0!important;
    padding:0!important;
  }
  body.efpaf2-app-lock{
    position:fixed!important;
    inset:0!important;
  }
  html.efpaf2-app-lock body,
  body.efpaf2-app-lock #page,
  body.efpaf2-app-lock .site,
  body.efpaf2-app-lock .site-content,
  body.efpaf2-app-lock main,
  body.efpaf2-app-lock article,
  body.efpaf2-app-lock .entry-content,
  body.efpaf2-app-lock .elementor,
  body.efpaf2-app-lock .elementor-section,
  body.efpaf2-app-lock .elementor-container,
  body.efpaf2-app-lock .elementor-column,
  body.efpaf2-app-lock .elementor-widget,
  body.efpaf2-app-lock .elementor-widget-container{
    overflow:hidden!important;
    height:var(--efpaf-app-h,100dvh)!important;
    min-height:var(--efpaf-app-h,100dvh)!important;
    max-height:var(--efpaf-app-h,100dvh)!important;
    margin-top:0!important;
    margin-bottom:0!important;
  }
  .efpaf2.efpaf2-mobile-app{
    position:fixed!important;
    left:0!important;
    top:var(--efpaf-app-top,0px)!important;
    right:auto!important;
    bottom:auto!important;
    width:100vw!important;
    height:var(--efpaf-app-h,100dvh)!important;
    min-height:var(--efpaf-app-h,100dvh)!important;
    max-height:var(--efpaf-app-h,100dvh)!important;
    z-index:2147483000!important;
    overflow:hidden!important;
    overscroll-behavior:none!important;
    background:#fff!important;
    transform:none!important;
    margin:0!important;
    padding:0!important;
    display:block!important;
  }
  .efpaf2.efpaf2-mobile-app .efpaf2__visual{display:none!important;}
  .efpaf2.efpaf2-mobile-app .efpaf2__panel{
    width:100vw!important;
    height:var(--efpaf-app-h,100dvh)!important;
    min-height:var(--efpaf-app-h,100dvh)!important;
    max-height:var(--efpaf-app-h,100dvh)!important;
    overflow:hidden!important;
    background:#fff!important;
    padding:15px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin:0!important;
  }
  .efpaf2.efpaf2-mobile-app .efpaf2__step{
    width:100%!important;
    max-width:calc(100vw - 30px)!important;
    max-height:calc(var(--efpaf-app-h,100dvh) - 30px)!important;
    overflow:hidden!important;
    margin:0 auto!important;
    padding:0!important;
    text-align:center!important;
  }
  .efpaf2.efpaf2-mobile-app .efpaf2__step.is-active{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:stretch!important;
  }
  .efpaf2.efpaf2-mobile-app .efpaf2__step:not(.is-active){display:none!important;}
  .efpaf2.efpaf2-mobile-app input,
  .efpaf2.efpaf2-mobile-app select,
  .efpaf2.efpaf2-mobile-app textarea,
  .efpaf2.efpaf2-mobile-app button{
    font-size:16px!important;
    -webkit-text-size-adjust:100%!important;
    transform:none!important;
    touch-action:manipulation!important;
  }
  .efpaf2.efpaf2-mobile-app .efpaf2__field,
  .efpaf2.efpaf2-mobile-app .efpaf2__phone-combo,
  .efpaf2.efpaf2-mobile-app .efpaf2__plan-trigger,
  .efpaf2.efpaf2-mobile-app .efpaf2__card,
  .efpaf2.efpaf2-mobile-app .efpaf2__notice,
  .efpaf2.efpaf2-mobile-app button{
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
  }
  .efpaf2.efpaf2-mobile-app .efpaf2__links{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    text-align:left!important;
    gap:10px!important;
  }
  .efpaf2.efpaf2-mobile-app.is-keyboard-open .efpaf2__panel{
    align-items:flex-start!important;
    justify-content:flex-start!important;
    padding-top:max(12px, env(safe-area-inset-top))!important;
  }
  .efpaf2.efpaf2-mobile-app.is-keyboard-open .efpaf2__step.is-active{
    justify-content:flex-start!important;
  }
  .efpaf2.efpaf2-mobile-app.is-keyboard-open h1{
    font-size:clamp(19px,5.2vw,24px)!important;
    line-height:1.18!important;
    letter-spacing:.12em!important;
    margin:0 0 14px!important;
    max-width:100%!important;
  }
  .efpaf2.efpaf2-mobile-app.is-keyboard-open .efpaf2__benefits{
    margin-bottom:14px!important;
    font-size:13px!important;
    gap:3px!important;
  }
  .efpaf2.efpaf2-mobile-app.is-keyboard-open .efpaf2__links{
    margin-top:2px!important;
    gap:5px!important;
  }
  .efpaf2.efpaf2-mobile-app.is-keyboard-open .efpaf2__field,
  .efpaf2.efpaf2-mobile-app.is-keyboard-open .efpaf2__phone-combo,
  .efpaf2.efpaf2-mobile-app.is-keyboard-open .efpaf2__plan-trigger,
  .efpaf2.efpaf2-mobile-app.is-keyboard-open .efpaf2__card,
  .efpaf2.efpaf2-mobile-app.is-keyboard-open .efpaf2__notice{
    margin-bottom:8px!important;
  }
  .efpaf2.efpaf2-mobile-app.is-keyboard-open button{
    margin:8px 0 10px!important;
  }
}
