/* V19 shared brand header for public Home, Signup, Partner; scoped to .em-public-page. */
.em-public-page{--em-green:#087944}
.em-public-page .em-public-head{box-sizing:border-box;z-index:80!important;position:relative;background:rgba(255,255,255,.97);border:1px solid #dcece2;box-shadow:0 14px 36px rgba(8,60,31,.08);backdrop-filter:blur(16px)}
.em-public-page .em-public-head .em-public-inner{display:flex;align-items:center;min-height:77px;gap:15px;justify-content:space-between;box-sizing:border-box}
.em-public-page .em-public-brand{display:flex;align-items:center;gap:9px;color:#0c5733;text-decoration:none;flex:none;min-width:0}
.em-public-page .em-public-brand img{width:54px;height:52px;object-fit:contain;background:transparent;border:0;flex:none}
.em-public-page .em-public-brand .brand-lines{display:flex;flex-direction:column;line-height:1.17}
.em-public-page .em-public-brand strong{font-size:clamp(18px,1.65vw,24px);color:#0b6339;letter-spacing:-.7px;font-weight:900;white-space:nowrap}
.em-public-page .em-public-brand em{font-style:normal;color:#143c2a}
.em-public-page .em-public-brand small{font-size:8px;letter-spacing:.65px;color:#668577;font-weight:800;white-space:nowrap}
.em-public-page .em-public-nav{display:flex;align-items:center;gap:4px;margin:0}
.em-public-page .em-public-nav a{white-space:nowrap;text-decoration:none;font-size:12px;font-weight:750;padding:10px 9px;color:#244637}
.em-public-page .em-public-nav a:hover{color:#078a48}
.em-public-page .em-public-actions{display:flex;align-items:center;gap:8px;margin:0;flex:none}
.em-public-page .em-public-actions .top-cta{font-size:12px;font-weight:850;border-radius:12px;white-space:nowrap;display:inline-flex;align-items:center;gap:5px;justify-content:center;min-height:41px;padding:8px 13px;box-sizing:border-box}
.em-public-page .em-menu-toggle{display:none;align-items:center;justify-content:center;flex-direction:column;gap:5px;flex:0 0 42px;width:42px;height:42px;border:1px solid #d5e7db;border-radius:12px;background:#f1faf5;padding:9px;cursor:pointer}
.em-public-page .em-menu-toggle span{height:2px;background:#0b6b3d;border-radius:12px;width:20px;display:block}
.em-mobile-contacts{display:none}
@media (min-width:851px){.em-public-page .em-public-head{width:min(1520px,calc(100% - 44px));margin:12px auto 0;border-radius:23px!important}}
@media (max-width:1100px){.em-public-page .em-public-nav a{font-size:11px;padding:10px 5px}.em-public-page .em-public-brand small{font-size:7px}.em-public-page .em-public-brand strong{font-size:19px}}
@media(max-width:850px){
 .em-public-page{padding-bottom:68px}
 .em-public-page .em-public-head{width:100%!important;border-radius:0!important;margin:0!important;position:relative;min-height:70px!important;height:70px!important}
 .em-public-page .em-public-head .em-public-inner{display:grid!important;grid-template-columns:47px minmax(0,1fr) minmax(101px,auto);align-items:center;gap:5px;min-height:69px!important;height:69px!important;padding:6px 10px!important;width:100%!important;max-width:none}
 .em-public-page .em-menu-toggle{display:flex!important;grid-column:1;grid-row:1;width:40px;height:40px}
 .em-public-page .em-public-brand{grid-column:2;grid-row:1;justify-self:center;display:flex!important;flex-direction:column;gap:0;align-items:center;text-align:center;max-width:100%;min-width:0}
 .em-public-page .em-public-brand img{width:39px!important;height:39px!important}
 .em-public-page .em-public-brand strong{font-size:clamp(11px,3.15vw,15px)!important;line-height:1;letter-spacing:-.3px}
 .em-public-page .em-public-brand small{display:none!important}
 .em-public-page .em-public-actions{grid-column:3;grid-row:1;justify-self:end;min-width:0;margin:0!important}
 .em-public-page .em-public-actions .top-cta{font-size:clamp(9px,2.55vw,11px)!important;padding:8px 8px!important;min-height:36px!important;line-height:1.1}
 .em-public-page .em-public-actions .top-cta span{display:none}
 .em-public-page .em-public-nav{display:none!important;position:absolute!important;top:calc(100% + 5px)!important;left:10px!important;right:10px!important;z-index:100!important;max-width:none!important;width:auto!important;background:#fff!important;border:1px solid #dcece2!important;border-radius:17px!important;box-shadow:0 20px 40px rgba(0,40,18,.18)!important;padding:12px!important;flex-direction:column!important;gap:0!important;align-items:stretch!important;overflow:visible!important}
 .em-public-page.nav-open .em-public-nav{display:flex!important}
 .em-public-page .em-public-nav a{font-size:14px!important;text-align:left!important;padding:12px!important;display:block!important}
 .em-public-page .em-mobile-contacts{display:grid;position:fixed;bottom:0;left:0;right:0;height:62px;z-index:100;grid-template-columns:1fr 1.2fr 1fr;align-items:center;padding:4px 12px max(4px,env(safe-area-inset-bottom));background:#f4fbf6;border-top:1px solid #cae5d3;box-shadow:0 -8px 25px rgba(7,70,30,.09);box-sizing:content-box;color:#075939}
 .em-public-page .em-mobile-contacts>a{font-size:18px;text-decoration:none;color:#0b7943;font-weight:850;text-align:center;display:flex;align-items:center;justify-content:center;gap:5px}
 .em-public-page .em-mobile-contacts small{font-size:11px}
 .em-public-page .em-contact-brand{display:flex;align-items:center;flex-direction:column;line-height:1.1;text-align:center;font-size:11px}
 .em-public-page .em-contact-brand img{width:31px;height:31px;object-fit:contain}
 .em-public-page .em-contact-brand b{font-size:11px}
}
@media(max-width:350px){.em-public-page .em-public-head .em-public-inner{grid-template-columns:40px minmax(0,1fr) 98px;padding:5px 6px!important}.em-public-page .em-public-actions .top-cta{font-size:9px!important;padding:7px 6px!important}.em-public-page .em-public-brand strong{font-size:11px!important}}
/* Center every hero element on handheld devices; desktop layout is unchanged. */
@media(max-width:730px){
 .em-public-page.et-home .hero-copy,.em-public-page.et-home .hero-layout{text-align:center!important}
 .em-public-page.et-home .hero-copy .kicker{margin-left:auto;margin-right:auto}
 .em-public-page.et-home .hero-heading{text-align:center!important}
 .em-public-page.et-home .lead{margin-left:auto;margin-right:auto;text-align:center!important}
 .em-public-page.et-home .hero-actions{display:flex;justify-content:center!important;align-items:stretch}
 .em-public-page.et-home .hero-actions .btn{flex:1 1 160px;justify-content:center!important;text-align:center!important}
 .em-public-page.et-home .shop-open{margin-left:auto;margin-right:auto;text-align:center!important}
 .em-public-page.et-home .shop-open label{display:block;text-align:center!important}
 .em-public-page.et-home .shop-open-row{justify-content:center!important}
 .em-public-page.et-home .trust-row{justify-content:center!important;text-align:center!important}
 .em-public-page.et-home .hero-product{margin-left:auto;margin-right:auto}
 .em-public-page.et-home .screen-note{text-align:center}
}
/* Narrow phone signup forms must not overflow because of long placeholders or labels. */
@media(max-width:600px){
 .em-public-page .form-shell,.em-public-page .form-shell .wrap,.em-public-page .form-card,.em-public-page .form-card form{min-width:0;max-width:100%;box-sizing:border-box}
 .em-public-page .form-shell .form-grid{grid-template-columns:minmax(0,1fr)!important;min-width:0}
 .em-public-page .form-shell .form-grid>*{min-width:0;max-width:100%;grid-column:1/-1;box-sizing:border-box}
 .em-public-page .form-shell input,.em-public-page .form-shell select,.em-public-page .form-shell textarea{box-sizing:border-box;min-width:0;width:100%;max-width:100%}
 .em-public-page #emGps{max-width:100%;white-space:normal;overflow-wrap:anywhere}
}

/* V20: Keep shared public navigation visible during page scroll. */
.em-public-page .em-public-head { position:sticky!important; top:0!important; z-index:1000!important; }
/* `overflow-x:hidden` on the homepage body creates a scroll container that breaks sticky in Chromium. */
.em-public-page.et-home { overflow-x:clip!important; }
.em-public-page .em-public-brand:focus-visible,
.em-public-page .em-contact-brand:focus-visible { outline:3px solid #07914b;outline-offset:3px; }
@media(max-width:850px){
  .em-public-page .em-public-head{position:sticky!important;top:0!important;z-index:1000!important;}
  .em-public-page .em-mobile-contacts>a.em-contact-brand {display:flex!important;flex-direction:column!important;gap:0!important;font-size:11px!important;text-decoration:none!important;color:#075939!important;}
}

/* V21 explicit hit areas: do not allow decorative descendants to absorb ET logo clicks. */
.em-public-page a.em-public-brand,
.em-public-page a.em-contact-brand,
.em-public-page a.em-footer-home {
  cursor:pointer!important;
  pointer-events:auto!important;
  position:relative;
  z-index:2;
  touch-action:manipulation;
}
.em-public-page a.em-public-brand > *,
.em-public-page a.em-contact-brand > *,
.em-public-page a.em-footer-home > * { pointer-events:none!important; }

/* V22: native home navigation. Ensure no decorative layer/menu blocks brand hit area. */
.em-public-page .em-public-head .em-public-brand {
  position:relative!important; z-index:125!important; pointer-events:auto!important;
  display:flex!important; cursor:pointer!important; touch-action:manipulation!important;
}
.em-public-page .em-public-head .em-public-brand img,
.em-public-page .em-public-head .em-public-brand .brand-lines,
.em-public-page .em-public-head .em-public-brand .brand-lines * { pointer-events:none!important; }
.em-public-page .em-mobile-contacts .em-contact-brand {
  position:relative!important; z-index:125!important; pointer-events:auto!important;
  cursor:pointer!important; touch-action:manipulation!important;
}
.em-public-page .em-mobile-contacts .em-contact-brand *{pointer-events:none!important;}
.em-public-page .footer a.em-footer-home{position:relative!important;z-index:2!important;pointer-events:auto!important;cursor:pointer!important;}
.em-public-page .footer a.em-footer-home *{pointer-events:none!important;}

/* V23: top navigation repair -- native anchors and JS-independent phone menu. */
.em-public-page .em-public-head{
  position:sticky!important;top:0!important;z-index:2147483000!important;
  pointer-events:auto!important;isolation:isolate;
}
.em-public-page .em-public-head::before,
.em-public-page .em-public-head::after{pointer-events:none!important;}
.em-public-page .em-public-head .em-public-inner{position:relative!important;z-index:1!important;pointer-events:auto!important;}
.em-public-page .em-public-head .em-public-nav,
.em-public-page .em-public-head .em-public-actions{position:relative;z-index:3;pointer-events:auto!important;}
.em-public-page .em-public-head .em-public-brand,
.em-public-page .em-public-head .em-public-nav a,
.em-public-page .em-public-head .em-public-actions a{
 pointer-events:auto!important;cursor:pointer!important;touch-action:manipulation;}
.em-public-page .em-public-head a::before,.em-public-page .em-public-head a::after{pointer-events:none!important;}
.em-public-page .em-public-head .em-nav-switch{
  position:absolute!important;width:1px!important;height:1px!important;
  opacity:0!important;margin:0!important;clip-path:inset(50%)!important;
  overflow:hidden!important;pointer-events:none!important;
}
@media(min-width:851px){
  .em-public-page .em-public-head .em-menu-toggle{display:none!important;}
  .em-public-page .em-public-head .em-public-nav{display:flex!important;}
}
@media(max-width:850px){
  .em-public-page .em-public-head .em-menu-toggle{display:flex!important;position:relative!important;z-index:8!important;pointer-events:auto!important;cursor:pointer!important;user-select:none;}
  .em-public-page .em-public-head .em-menu-toggle span{pointer-events:none!important;}
  .em-public-page .em-public-head .em-public-nav{position:absolute!important;z-index:10!important;}
  .em-public-page .em-public-head .em-nav-switch:checked ~ .em-public-nav{display:flex!important;pointer-events:auto!important;}
  .em-public-page .em-public-head .em-nav-switch:focus-visible + .em-menu-toggle{outline:3px solid #07914b;outline-offset:2px;}
}
