/* Multi-campaign popup shells use unique IDs; style them by shared class. */

.everycommerce-marketing-signup{display:grid;gap:14px;margin:0}

.everycommerce-marketing-signup-copy{display:flex;flex-direction:column;gap:10px;text-align:var(--ec-signup-align,center)}

.everycommerce-marketing-signup-copy strong{font-size:clamp(24px,4vw,34px);line-height:1.08;letter-spacing:-.025em;color:var(--ec-signup-text,#111);font-weight:720}

.everycommerce-marketing-signup-copy span{font-size:14px;line-height:1.55;color:var(--ec-signup-muted,#646b73)}

.everycommerce-marketing-signup-controls{display:grid;gap:10px}

.everycommerce-marketing-field{display:flex;flex:1 1 0;min-width:0;flex-direction:column;gap:5px}

.everycommerce-marketing-field input{width:100%;min-height:48px;padding:0 14px;border:1px solid var(--ec-signup-input-border,#d8dde3);border-radius:4px;background:var(--ec-signup-input-bg,#fff);color:var(--ec-signup-text,#111);font:inherit;font-size:15px;box-sizing:border-box;outline:none;transition:border-color .15s ease,box-shadow .15s ease}

.everycommerce-marketing-popup-shell .everycommerce-marketing-field input:focus,.everycommerce-marketing-popup-shell .everycommerce-marketing-field input:focus-visible{outline:none!important;outline-offset:0!important;border-color:var(--ec-signup-input-border,#d8dde3)!important;box-shadow:0 0 0 1px rgba(17,17,17,.05)!important}

.everycommerce-marketing-field input::placeholder{color:var(--ec-signup-muted,#7b8490);opacity:.8}

.everycommerce-marketing-submit{min-height:48px;padding:0 34px;border:0;border-radius:4px;background:var(--ec-signup-button-bg,#111);color:var(--ec-signup-button-text,#fff);font:inherit;font-size:14px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;white-space:nowrap;transition:background-color .15s ease,opacity .12s ease}

.everycommerce-marketing-submit:hover{background:#333}

.everycommerce-marketing-submit:disabled{cursor:wait;opacity:.66}

.everycommerce-marketing-legal{display:block;text-align:var(--ec-signup-align,center);font-size:12px;line-height:1.45;color:var(--ec-signup-muted,#646b73);opacity:.92}

.everycommerce-marketing-signup-error{padding:9px 11px;border-radius:4px;background:#fff2f2;color:#9f2626;font-size:12px;line-height:1.4}

.everycommerce-marketing-signup{transition:opacity .18s ease,transform .18s ease}

.everycommerce-marketing-signup.is-leaving{opacity:0;transform:translateY(-6px)}

.everycommerce-marketing-signup-success{display:flex;min-height:250px;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;opacity:0;transform:translateY(8px);transition:opacity .28s ease,transform .28s ease}

.everycommerce-marketing-signup-success.is-visible{opacity:1;transform:translateY(0)}

.everycommerce-marketing-success-icon{display:grid!important;place-items:center;width:54px;height:54px;margin:0 0 8px;border:1.5px solid #2f8a4a;border-radius:999px;color:#2f8a4a!important;font-size:27px!important;font-weight:500;line-height:1!important}

.everycommerce-marketing-signup-success strong{max-width:460px;font-size:36px;line-height:1.08;letter-spacing:-.028em;color:var(--ec-signup-text,#111);font-weight:700}

.everycommerce-marketing-signup-success>span:not(.everycommerce-marketing-success-icon){max-width:430px;font-size:15px;line-height:1.55;color:var(--ec-signup-muted,#646b73)}

.everycommerce-marketing-success-action{display:inline-flex;align-items:center;justify-content:center;min-width:180px;min-height:48px;margin-top:10px;padding:0 28px;border:0;border-radius:4px;background:var(--ec-signup-button-bg,#111);color:var(--ec-signup-button-text,#fff);font:inherit;font-size:14px;font-weight:700;letter-spacing:.02em;cursor:pointer}

.everycommerce-marketing-success-action:hover{opacity:.88}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.is-success .everycommerce-marketing-popup-image{display:none!important}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.is-success .everycommerce-marketing-popup-content{padding-top:max(42px,var(--ec-signup-padding,40px));padding-bottom:max(42px,var(--ec-signup-padding,40px))}



.everycommerce-marketing-popup-shell[hidden]{display:none!important}

.everycommerce-marketing-popup-shell{position:fixed;z-index:999999;inset:0;display:flex;align-items:center;justify-content:center;padding:22px;box-sizing:border-box;opacity:0;background:var(--ec-signup-overlay,rgba(0,0,0,.60));backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup-backdrop{position:absolute;inset:0;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup{position:relative;z-index:1;width:90%;max-width:var(--ec-signup-width,640px);max-height:calc(100vh - 44px);overflow:auto;border-radius:var(--ec-signup-radius,2px);background:var(--ec-signup-bg,#fff);box-shadow:0 20px 50px rgba(0,0,0,.15);color:var(--ec-signup-text,#111);box-sizing:border-box;opacity:0;text-align:center}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup-content{padding:var(--ec-signup-padding,40px);box-sizing:border-box}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup-close{position:absolute;z-index:4;right:20px;top:15px;width:32px;height:32px;padding:0;border:0;background:transparent;color:#999;font:400 28px/32px Arial,sans-serif;cursor:pointer;box-shadow:none}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup-close:hover{color:#000}

.everycommerce-marketing-popup-shell .everycommerce-marketing-signup{display:block!important;margin:0}

.everycommerce-marketing-popup-shell .everycommerce-marketing-signup-copy{display:flex!important;flex-direction:column!important;gap:0!important;text-align:center!important}

.everycommerce-marketing-popup-shell .everycommerce-marketing-signup-copy strong{font-size:42px!important;font-weight:700!important;line-height:1.1!important;letter-spacing:-.025em!important;margin:0 0 15px!important;color:var(--ec-signup-text,#000)!important}

.everycommerce-marketing-popup-shell .everycommerce-marketing-signup-copy span{display:block!important;max-width:480px!important;margin:0 auto 30px!important;font-size:16px!important;font-weight:500!important;line-height:1.4!important;color:var(--ec-signup-muted,#333)!important}

.everycommerce-marketing-popup-shell .everycommerce-marketing-signup-controls{display:flex!important;flex-direction:row!important;align-items:stretch!important;justify-content:center!important;gap:10px!important;margin:0 0 20px!important}

.everycommerce-marketing-popup-shell .everycommerce-marketing-field{display:flex!important;flex:1 1 0!important;min-width:0!important;margin:0!important}

.everycommerce-marketing-popup-shell .everycommerce-marketing-field input{width:100%!important;min-height:48px!important;padding:12px 15px!important;border:1px solid var(--ec-signup-input-border,#ccc)!important;border-radius:4px!important;background:var(--ec-signup-input-bg,#fff)!important;color:var(--ec-signup-text,#000)!important;font-size:16px!important;line-height:1.2!important;box-sizing:border-box!important}

.everycommerce-marketing-popup-shell .everycommerce-marketing-submit{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;width:auto!important;min-width:116px!important;min-height:48px!important;margin:0!important;padding:12px 40px!important;border:0!important;border-radius:4px!important;background:var(--ec-signup-button-bg,#000)!important;color:var(--ec-signup-button-text,#fff)!important;font-size:14px!important;font-weight:600!important;letter-spacing:1px!important;text-transform:uppercase!important;white-space:nowrap!important}

.everycommerce-marketing-popup-shell .everycommerce-marketing-legal{display:block!important;margin:15px 0 0!important;text-align:center!important;font-size:12px!important;line-height:1.4!important;color:var(--ec-signup-muted,#666)!important}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup-image{overflow:hidden;background:transparent}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup-image img{display:block;max-width:100%}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.is-image-top .everycommerce-marketing-popup-image{height:auto;padding:24px var(--ec-signup-padding,40px) 0;box-sizing:border-box}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.is-image-top .everycommerce-marketing-popup-image img{width:auto!important;height:auto!important;max-width:100%!important;max-height:160px!important;margin:0 auto!important;object-fit:contain!important}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-left,.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-right{display:grid;width:90%;max-width:760px;grid-template-columns:minmax(220px,.85fr) minmax(300px,1.15fr)}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-right{grid-template-columns:minmax(300px,1.15fr) minmax(220px,.85fr)}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-right .everycommerce-marketing-popup-image{order:2}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-right .everycommerce-marketing-popup-content{order:1}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-left .everycommerce-marketing-popup-image,.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-right .everycommerce-marketing-popup-image{min-height:100%;background:#eef0f2}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-left .everycommerce-marketing-popup-image img,.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-right .everycommerce-marketing-popup-image img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center var(--ec-signup-image-focus,center)!important}

.everycommerce-marketing-popup-shell.is-open{animation:everycommerceSignupFadeIn .4s ease-out forwards}

.everycommerce-marketing-popup-shell.is-open .everycommerce-marketing-popup{animation:everycommerceSignupSlideUp .6s cubic-bezier(.16,1,.3,1) .1s forwards}

.everycommerce-marketing-popup-shell.is-closing{animation:everycommerceSignupFadeOut .3s ease-in forwards}

.everycommerce-marketing-popup-shell.is-closing .everycommerce-marketing-popup{animation:everycommerceSignupSlideDown .3s ease-in forwards}

@keyframes everycommerceSignupFadeIn{from{opacity:0}to{opacity:1}}

@keyframes everycommerceSignupFadeOut{from{opacity:1}to{opacity:0}}

@keyframes everycommerceSignupSlideUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}

@keyframes everycommerceSignupSlideDown{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(15px)}}

html.everycommerce-popup-open,html.everycommerce-popup-open body{overflow:hidden}



@media(max-width:767px){

  .everycommerce-marketing-popup-shell{padding:20px}

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup{width:90%;max-width:90%;border-radius:var(--ec-signup-radius,2px)}

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup-content{padding:30px 20px}

  .everycommerce-marketing-popup-shell .everycommerce-marketing-signup-copy strong{font-size:32px!important}

  .everycommerce-marketing-popup-shell .everycommerce-marketing-signup-controls{flex-direction:column!important;gap:15px!important}

  .everycommerce-marketing-popup-shell .everycommerce-marketing-submit{width:100%!important;min-height:48px!important;padding:15px!important}

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-left,.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-right{display:block;width:90%;max-width:90%}

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-left .everycommerce-marketing-popup-image,.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-right .everycommerce-marketing-popup-image{height:150px;min-height:0;order:0}

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-right .everycommerce-marketing-popup-content{order:0}

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup.is-image-top .everycommerce-marketing-popup-image{padding:20px 20px 0}

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup.is-image-top .everycommerce-marketing-popup-image img{max-height:120px!important}

  .everycommerce-marketing-signup-success{min-height:220px}

  .everycommerce-marketing-signup-success strong{font-size:30px}

  .everycommerce-marketing-success-action{width:100%;min-width:0}

}

@media(prefers-reduced-motion:reduce){

  .everycommerce-marketing-popup-shell.is-open,.everycommerce-marketing-popup-shell.is-closing,.everycommerce-marketing-popup-shell.is-open .everycommerce-marketing-popup,.everycommerce-marketing-popup-shell.is-closing .everycommerce-marketing-popup{animation-duration:.01ms!important;animation-delay:0s!important}

}



.everycommerce-account-preferences{max-width:720px}

.everycommerce-account-preferences>p{opacity:.72}

.everycommerce-preference-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:15px 0;border-bottom:1px solid rgba(0,0,0,.08)}

.everycommerce-preference-row>span{display:flex;flex-direction:column;gap:4px}

.everycommerce-preference-row strong{font-size:14px}

.everycommerce-preference-row small{font-size:12px;opacity:.68}

.everycommerce-account-preferences .button.alt{margin-top:18px}



/* My Account > Account Details: embedded EveryCommerce communication preferences. */

.wc-block-components-checkbox:has(input[data-everycommerce-order-sms="1"]){margin-top:10px}

.everycommerce-account-preferences--embedded{max-width:none;margin:34px 0 8px;padding:28px 0 0;border:0;border-top:1px solid rgba(0,0,0,.10)}

.everycommerce-account-preferences--embedded legend{display:block;width:100%;margin:0 0 6px;padding:0;font-size:24px;line-height:1.25;font-weight:650}

.everycommerce-account-preferences--embedded>p{margin:0 0 8px;font-size:14px;line-height:1.5;opacity:.72}

.everycommerce-account-preferences--embedded .everycommerce-preference-row{cursor:pointer}

.everycommerce-account-preferences .everycommerce-preference-copy{min-width:0;display:flex;flex-direction:column;gap:4px}

.everycommerce-account-preferences .everycommerce-preference-switch{position:relative;display:inline-block;flex:0 0 40px;width:40px;height:24px}

.everycommerce-account-preferences .everycommerce-preference-switch input[type=checkbox]{position:absolute;inset:0;z-index:2;width:40px;height:24px;margin:0!important;padding:0!important;opacity:0;cursor:pointer}

.everycommerce-account-preferences .everycommerce-preference-switch-track{position:absolute;inset:0;display:block;border:1px solid rgba(0,0,0,.18);border-radius:999px;background:#d6dbe3;box-sizing:border-box;transition:background-color .16s ease,border-color .16s ease}

.everycommerce-account-preferences .everycommerce-preference-switch-knob{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.22);transition:transform .16s ease}

.everycommerce-account-preferences .everycommerce-preference-switch input[type=checkbox]:checked + .everycommerce-preference-switch-track{background:#1768e8;border-color:#1768e8}

.everycommerce-account-preferences .everycommerce-preference-switch input[type=checkbox]:checked + .everycommerce-preference-switch-track .everycommerce-preference-switch-knob{transform:translateX(16px)}

.everycommerce-account-preferences .everycommerce-preference-switch input[type=checkbox]:focus-visible + .everycommerce-preference-switch-track{outline:2px solid currentColor;outline-offset:3px}

.everycommerce-account-preferences .everycommerce-preference-switch input[type=checkbox]:disabled + .everycommerce-preference-switch-track{opacity:.5;cursor:not-allowed}

@media(max-width:600px){.everycommerce-account-preferences--embedded{margin-top:28px;padding-top:24px}.everycommerce-account-preferences--embedded legend{font-size:21px}.everycommerce-preference-row{gap:16px}}



/* Popup campaign state integrity: author display rules must never defeat [hidden]. */

.everycommerce-marketing-popup-shell .everycommerce-marketing-signup[hidden],

.everycommerce-marketing-popup-shell .everycommerce-marketing-signup-success[hidden]{display:none!important}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.is-success{display:block!important;width:90%!important;max-width:520px!important;overflow:hidden!important}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.is-success .everycommerce-marketing-popup-content{padding:46px 42px!important}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.is-success .everycommerce-marketing-signup-success{min-height:190px}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.is-informational .everycommerce-marketing-signup-controls:empty{display:none!important;margin:0!important}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.is-informational .everycommerce-marketing-signup{gap:0}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.is-informational .everycommerce-marketing-signup-copy span{margin-bottom:0!important}

@media(max-width:767px){

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup.is-success{max-width:90%!important}

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup.is-success .everycommerce-marketing-popup-content{padding:40px 24px!important}

}



/* Popup campaign responsive layout parity: the storefront consumes the same

   desktop/mobile dimensions, image crop, and text alignment values as the admin preview. */

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup{

  width:90%!important;

  max-width:var(--ec-signup-width,640px)!important;

  height:var(--ec-signup-height,360px);

  max-height:calc(100vh - 44px);

  border-radius:var(--ec-signup-radius,20px)!important;

  overflow:hidden;

}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup-content{

  display:flex;

  flex-direction:column;

  justify-content:var(--ec-signup-justify,center);

  min-width:0;

  min-height:0;

  height:100%;

  padding:var(--ec-signup-padding,32px)!important;

  overflow:auto;

  text-align:var(--ec-signup-align,center)!important;

}

.everycommerce-marketing-popup-shell .everycommerce-marketing-signup{width:100%}

.everycommerce-marketing-popup-shell .everycommerce-marketing-signup-copy{text-align:var(--ec-signup-align,center)!important}

.everycommerce-marketing-popup-shell .everycommerce-marketing-signup-copy strong,

.everycommerce-marketing-popup-shell .everycommerce-marketing-signup-copy span,

.everycommerce-marketing-popup-shell .everycommerce-marketing-legal{text-align:var(--ec-signup-align,center)!important}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-none .everycommerce-marketing-popup-image{display:none!important}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-top{

  display:grid!important;

  grid-template-columns:1fr!important;

  grid-template-rows:var(--ec-signup-image-height,160px) minmax(0,1fr)!important;

}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-top .everycommerce-marketing-popup-image{

  display:block!important;height:100%!important;min-height:0!important;padding:0!important;overflow:hidden;background:#eef0f2

}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-top .everycommerce-marketing-popup-image img{

  width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;object-fit:cover!important;object-position:center var(--ec-signup-image-focus,center)!important

}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-left,

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-right{

  display:grid!important;

  width:90%!important;

  max-width:var(--ec-signup-width,640px)!important;

  grid-template-rows:minmax(0,1fr)!important;

  grid-template-columns:var(--ec-signup-image-width,42%) minmax(0,1fr)!important;

}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-right{

  grid-template-columns:minmax(0,1fr) var(--ec-signup-image-width,42%)!important;

}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-left .everycommerce-marketing-popup-image,

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-right .everycommerce-marketing-popup-image{

  display:block!important;height:100%!important;min-height:0!important;overflow:hidden

}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-left .everycommerce-marketing-popup-image img,

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-image-right .everycommerce-marketing-popup-image img{

  width:100%!important;height:100%!important;object-fit:cover!important;object-position:center var(--ec-signup-image-focus,center)!important

}



@media(max-width:767px){

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup{

    width:var(--ec-signup-mobile-width,90%)!important;

    max-width:var(--ec-signup-mobile-width,90%)!important;

    height:var(--ec-signup-mobile-height,auto);

    max-height:calc(100vh - 40px);

    border-radius:var(--ec-signup-mobile-radius,20px)!important;

  }

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup-content{

    padding:var(--ec-signup-mobile-padding,24px)!important;

    justify-content:var(--ec-signup-mobile-justify,center);

    text-align:var(--ec-signup-mobile-align,center)!important;

  }

  .everycommerce-marketing-popup-shell .everycommerce-marketing-signup-copy,

  .everycommerce-marketing-popup-shell .everycommerce-marketing-signup-copy strong,

  .everycommerce-marketing-popup-shell .everycommerce-marketing-signup-copy span,

  .everycommerce-marketing-popup-shell .everycommerce-marketing-legal{text-align:var(--ec-signup-mobile-align,center)!important}

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-mobile-image-none{display:block!important}

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-mobile-image-none .everycommerce-marketing-popup-image{display:none!important}

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-mobile-image-top{

    display:grid!important;

    grid-template-columns:1fr!important;

    grid-template-rows:var(--ec-signup-mobile-image-height,150px) minmax(0,1fr)!important;

  }

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-mobile-image-top .everycommerce-marketing-popup-image{

    display:block!important;order:0!important;height:100%!important;min-height:0!important;padding:0!important

  }

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-mobile-image-top .everycommerce-marketing-popup-image img{

    width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;object-position:center var(--ec-signup-mobile-image-focus,center)!important

  }

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-mobile-image-left,

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-mobile-image-right{

    display:grid!important;

    grid-template-rows:minmax(0,1fr)!important;

    grid-template-columns:var(--ec-signup-mobile-image-width,42%) minmax(0,1fr)!important;

  }

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-mobile-image-right{

    grid-template-columns:minmax(0,1fr) var(--ec-signup-mobile-image-width,42%)!important;

  }

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-mobile-image-left .everycommerce-marketing-popup-image,

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-mobile-image-right .everycommerce-marketing-popup-image{

    display:block!important;height:100%!important;min-height:0!important

  }

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-mobile-image-left .everycommerce-marketing-popup-image img,

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-mobile-image-right .everycommerce-marketing-popup-image img{

    width:100%!important;height:100%!important;object-fit:cover!important;object-position:center var(--ec-signup-mobile-image-focus,center)!important

  }

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-mobile-image-right .everycommerce-marketing-popup-image{order:2!important}

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-mobile-image-right .everycommerce-marketing-popup-content{order:1!important}

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-mobile-image-left .everycommerce-marketing-popup-image{order:0!important}

  .everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image.is-mobile-image-left .everycommerce-marketing-popup-content{order:1!important}

}





/* Popup preview/storefront parity hardening.

   Use one active crop variable per breakpoint so desktop crop rules can never

   override the mobile crop selected in the editor. */

.everycommerce-marketing-popup-shell{

  --ec-signup-active-image-focus:var(--ec-signup-image-focus,center);

}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup-content{

  position:relative;

}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup-close{

  top:12px;

  right:14px;

}

.everycommerce-marketing-popup-shell .everycommerce-marketing-popup.has-image .everycommerce-marketing-popup-image img{

  object-position:center var(--ec-signup-active-image-focus)!important;

}

@media(max-width:767px){

  .everycommerce-marketing-popup-shell{

    --ec-signup-active-image-focus:var(--ec-signup-mobile-image-focus,center);

  }

}



/* Runtime mobile-layout fallback: use real device/visual viewport detection in

   addition to the CSS media query, so mobile editor values remain authoritative

   even in storefront contexts that expose a desktop-sized layout viewport. */

.everycommerce-marketing-popup-shell.is-mobile-layout{padding:20px;--ec-signup-active-image-focus:var(--ec-signup-mobile-image-focus,center)}

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-popup{

  width:var(--ec-signup-mobile-width,90%)!important;

  max-width:var(--ec-signup-mobile-width,90%)!important;

  height:var(--ec-signup-mobile-height,auto)!important;

  max-height:calc(100vh - 40px)!important;

  border-radius:var(--ec-signup-mobile-radius,20px)!important;

}

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-popup-content{

  padding:var(--ec-signup-mobile-padding,24px)!important;

  justify-content:var(--ec-signup-mobile-justify,center)!important;

  text-align:var(--ec-signup-mobile-align,center)!important;

}

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-signup-copy,

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-signup-copy strong,

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-signup-copy span,

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-legal{text-align:var(--ec-signup-mobile-align,center)!important}

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-popup.has-image.is-mobile-image-none{display:block!important}

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-popup.has-image.is-mobile-image-none .everycommerce-marketing-popup-image{display:none!important}

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-popup.has-image.is-mobile-image-top{

  display:grid!important;grid-template-columns:1fr!important;

  grid-template-rows:var(--ec-signup-mobile-image-height,150px) minmax(0,1fr)!important;

}

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-popup.has-image.is-mobile-image-top .everycommerce-marketing-popup-image{

  display:block!important;order:0!important;height:100%!important;min-height:0!important;padding:0!important;overflow:hidden!important

}

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-popup.has-image.is-mobile-image-top .everycommerce-marketing-popup-image img{

  width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;

  object-fit:cover!important;object-position:center var(--ec-signup-mobile-image-focus,center)!important

}

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-popup.has-image.is-mobile-image-left,

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-popup.has-image.is-mobile-image-right{

  display:grid!important;grid-template-rows:minmax(0,1fr)!important;

  grid-template-columns:var(--ec-signup-mobile-image-width,42%) minmax(0,1fr)!important

}

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-popup.has-image.is-mobile-image-right{grid-template-columns:minmax(0,1fr) var(--ec-signup-mobile-image-width,42%)!important}

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-popup.has-image.is-mobile-image-left .everycommerce-marketing-popup-image,

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-popup.has-image.is-mobile-image-right .everycommerce-marketing-popup-image{display:block!important;height:100%!important;min-height:0!important;overflow:hidden!important}

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-popup.has-image.is-mobile-image-left .everycommerce-marketing-popup-image img,

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-popup.has-image.is-mobile-image-right .everycommerce-marketing-popup-image img{

  width:100%!important;height:100%!important;object-fit:cover!important;object-position:center var(--ec-signup-mobile-image-focus,center)!important

}

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-popup.has-image.is-mobile-image-right .everycommerce-marketing-popup-image{order:2!important}

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-popup.has-image.is-mobile-image-right .everycommerce-marketing-popup-content{order:1!important}

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-popup.has-image.is-mobile-image-left .everycommerce-marketing-popup-image{order:0!important}

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-popup.has-image.is-mobile-image-left .everycommerce-marketing-popup-content{order:1!important}

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-popup.has-image .everycommerce-marketing-popup-image img{object-position:center var(--ec-signup-mobile-image-focus,center)!important}

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-popup.is-success{max-width:var(--ec-signup-mobile-width,90%)!important}

.everycommerce-marketing-popup-shell.is-mobile-layout .everycommerce-marketing-popup.is-success .everycommerce-marketing-popup-content{padding:40px 24px!important}



/* Mobile image-frame enforcement.

   The mobile crop value was reaching the browser correctly, but some theme/

   legacy image sizing left the <img> at its intrinsic portrait height. That

   makes the wrapper crop from the top and prevents object-position from

   moving the crop window. On a runtime mobile popup, the image itself must

   always fill the configured image frame. */

.everycommerce-marketing-popup-shell.is-mobile-layout

.everycommerce-marketing-popup.has-image

.everycommerce-marketing-popup-image img {

  display:block!important;

  width:100%!important;

  height:100%!important;

  max-width:none!important;

  max-height:none!important;

  margin:0!important;

  object-fit:cover!important;

  object-position:center var(--ec-signup-mobile-image-focus,center)!important;

}



/* Picture-element frame fix.

   WordPress responsive images may wrap the <img> in <picture>. The configured

   popup image frame is applied to .everycommerce-marketing-popup-image, but a

   picture left at intrinsic height prevents the child img's height:100% from

   resolving against that frame. Force picture and img to fill the frame so

   object-position can actually choose Top / Middle / Bottom. */

.everycommerce-marketing-popup-shell

.everycommerce-marketing-popup.has-image

.everycommerce-marketing-popup-image > picture {

  display:block!important;

  width:100%!important;

  height:100%!important;

  min-width:0!important;

  min-height:0!important;

  max-width:none!important;

  max-height:none!important;

  margin:0!important;

  overflow:hidden!important;

}

.everycommerce-marketing-popup-shell

.everycommerce-marketing-popup.has-image

.everycommerce-marketing-popup-image > picture > img {

  display:block!important;

  width:100%!important;

  height:100%!important;

  min-width:0!important;

  min-height:0!important;

  max-width:none!important;

  max-height:none!important;

  margin:0!important;

  object-fit:cover!important;

  object-position:center var(--ec-signup-active-image-focus,center)!important;

}

.everycommerce-marketing-popup-shell.is-mobile-layout

.everycommerce-marketing-popup.has-image

.everycommerce-marketing-popup-image > picture > img {

  object-position:center var(--ec-signup-mobile-image-focus,center)!important;

}



/* EveryCommerce: suppress browser/theme autofocus ring inside marketing popup only. */
html body .everycommerce-marketing-popup-shell .everycommerce-marketing-field input:focus,
html body .everycommerce-marketing-popup-shell .everycommerce-marketing-field input:focus-visible,
html body .everycommerce-marketing-popup-shell .everycommerce-marketing-field input:-moz-focusring {
    outline: 0 !important;
    outline-width: 0 !important;
    outline-style: none !important;
    outline-color: transparent !important;
    outline-offset: 0 !important;
    box-shadow: 0 0 0 1px rgba(17, 17, 17, 0.04) !important;
    border-color: var(--ec-signup-input-border, #d8dde3) !important;
}
