/* Customer authentication dialog; standalone forms remain usable without JavaScript. */
.customer-auth-content{display:grid;grid-template-columns:42% minmax(0,1fr);background:#fff;color:#163d2c;min-width:0;border-radius:26px;overflow:hidden}
main>.customer-auth-content{max-width:1150px;margin:32px auto;border:1px solid #d9e5dd}
.customer-auth-dialog{padding:0;border:0;border-radius:15px;max-width: calc(160dvh - 160px);max-height:calc(85dvh - 0px);overflow:auto;background:#fff;color:#163d2c;box-shadow:0 25px 90px #0005;scrollbar-width:thin;scrollbar-color:#0f4229 transparent}
.customer-auth-dialog::backdrop{background:#05271cbb;backdrop-filter:blur(8px)}
/* Match the city popup motion; form switches do not restart the entrance. */
.customer-auth-dialog[open]{animation:customer-auth-enter 260ms cubic-bezier(.22,1,.36,1)}
.customer-auth-dialog[open]::backdrop{animation:customer-auth-backdrop-enter 220ms ease-out}
.customer-auth-dialog[open].is-closing{animation:customer-auth-exit 180ms ease-in forwards}
.customer-auth-dialog[open].is-closing::backdrop{animation:customer-auth-backdrop-exit 180ms ease-in forwards}
@keyframes customer-auth-enter{
 from{opacity:0;transform:translateY(16px) scale(.98)}
 to{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes customer-auth-exit{
 from{opacity:1;transform:translateY(0) scale(1)}
 to{opacity:0;transform:translateY(12px) scale(.98)}
}
@keyframes customer-auth-backdrop-enter{from{opacity:0}to{opacity:1}}
@keyframes customer-auth-backdrop-exit{from{opacity:1}to{opacity:0}}
html.customer-auth-open{overflow:hidden}
.customer-auth-dialog{scrollbar-width:none;scrollbar-gutter:auto}.customer-auth-dialog::-webkit-scrollbar{display:none;width:0;height:0}.customer-auth-dialog>.customer-auth-content{border-radius:0}
.customer-social{display:grid;gap:5px;padding:45px;border:1px solid #dce6df;border-radius:18px;background:#f6f9f7;text-align:center}.customer-social p{margin:0 0 6px;font-size:13px;color:#49745b}.customer-social form{margin:0}.customer-social-button{width:100%;padding:10px 10px;border-radius:999px;border:1px solid #d5ddd8;background:#fff;color:#243b2e;font-family:inherit;font-size:14px;font-weight:600;line-height:1.4;cursor:pointer}.customer-social-facebook{background:#1877f2;border-color:#1877f2;color:#fff}.customer-social-button:disabled{opacity:.55;cursor:not-allowed}.customer-social small{font-size:12px;line-height:1.5;color:#667c6e}.customer-auth-divider{display:flex;align-items:center;gap:15px;margin:28px 0;color:#708579;font-size:12px}.customer-auth-divider::before,.customer-auth-divider::after{content:"";height:1px;background:#dce6df;flex:1}
@media(forced-colors:active){.customer-auth-dialog{scrollbar-width:auto}.customer-auth-dialog::-webkit-scrollbar{display:block;width:6px}}
.customer-auth-story{position:relative;display:flex;flex-direction:column;padding:44px 40px;min-width:0;background:linear-gradient(150deg,#0f4229,#1d6348);color:#fff;overflow:hidden}
.customer-auth-brand{display:flex;align-items:center;gap:14px;color:#fff;text-decoration:none;font-size:21px}
.customer-auth-brand img{width:60px;height:45px;object-fit:contain;background:#fff;border-radius:6px;padding:4px}
.customer-auth-tagline{font-size:10px;letter-spacing:.18em;color:#b9d5c6;margin-top:20px}
.customer-auth-message{margin-block:72px 30px;position:relative;z-index:1}.customer-auth-message h2{color:#fff;font-size:clamp(2rem,3.6vw,3rem);line-height:1.15;letter-spacing:-.04em;margin:28px 0}.customer-auth-message p{color:#c5dfd0;font-size:15px;line-height:1.8}
.customer-auth-road{position:relative;min-height:130px;flex:1;margin-top:30px}.customer-auth-road::before,.customer-auth-road::after{content:"";position:absolute;width:160%;height:240px;border:1px solid #ffffff26;border-radius:50%;left:-30%;top:10px;transform:rotate(-12deg)}.customer-auth-road::after{top:35px}.customer-auth-road span{position:relative;display:grid;place-items:center;width:62px;height:60px;border-radius:12px;background:#f5c568;color:#0f4229;transform:rotate(-12deg);font-size:24px;font-weight:750;margin:35px auto;box-shadow:0 8px 0 #092e20}
.customer-auth-footnote{position:relative;font-size:12px;color:#c5dfd0;margin-top:35px}
.customer-auth-panel{position:relative;padding:35px 35px;min-width:0}.customer-auth-panel>.eyebrow{font-size:11px;color:#497d62;margin:0 0px 0px 0}.customer-auth-panel h1{font-size:clamp(1.8rem,3vw,2.35rem);line-height:1.2;margin:0 0px 0px 0;letter-spacing:-.04em;color:#0f4229}.customer-auth-intro{color:#6c8175;font-size:16px}
.customer-auth-close{position:absolute;right:20px;top:20px;display:grid;place-items:center;width:34px;height:34px;border:1px solid #dce6df;border-radius:50%;background:#f0f5f1;color:#143f2a;text-decoration:none}
.customer-auth-form{display:grid;gap:20px}.customer-auth-form label{display:grid;gap:5px;font-size:10px;font-weight:600}.customer-auth-form input{height: 40px; display:block;width:100%;min-width:0;padding:10px 15px;border:1px solid #cfded4;color:#173e2c;background:#fff;font:inherit;box-sizing:border-box}.customer-auth-form input:focus{outline:2px solid #0f4229;outline-offset:2px}
.customer-auth-password>div{position:relative;margin-top:5px}.customer-auth-password input{padding-right:74px}.customer-auth-password button{position:absolute;right:10px;top:50%;transform:translateY(-50%);padding:8px;border:0;background:transparent;color:#346c4d;cursor:pointer;font-size:13px}.customer-auth-password button[hidden]{display:none}
.customer-auth-forgot{justify-self:end;font-size:13px;color:#285f41;text-underline-offset:3px}.customer-auth-help{margin:0;color:#6c8175;font-size:12px;line-height:1.6}.customer-auth-submit{display:block;width:100%;min-height:35px;border:0;border-radius:5px;background:#0f4229;color:#fff;font-family:inherit;font-size:15px;font-weight:700;line-height:1.4;cursor:pointer}.customer-auth-submit:hover{background:#0a301e}.customer-auth-submit:disabled{opacity:.6;cursor:wait}.customer-auth-switch{text-align:center;color:#6c8175;margin:28px 0 0;font-size:14px}.customer-auth-switch a{color:#0f4229;font-weight:700;text-underline-offset:3px}
.customer-auth-notice{padding:14px;margin:16px 0;border-radius:10px;border:1px solid #aac7b4;background:#f0f7f2;font-size:14px}.customer-auth-error{background:#fff2ec;color:#823821;border-color:#dfb3a4}
.customer-auth-content a:focus-visible,.customer-auth-content button:focus-visible{outline:2px solid #bd831e;outline-offset:3px}
@media(max-width:800px){.customer-auth-dialog{width:calc(100% - 24px);max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);border-radius:18px}.customer-auth-content{grid-template-columns:1fr;border-radius:18px}.customer-auth-story{padding:24px}.customer-auth-brand{font-size:18px}.customer-auth-tagline{margin:10px 0 0}.customer-auth-message,.customer-auth-road,.customer-auth-footnote{display:none}.customer-auth-panel{padding:40px 50px}.customer-auth-panel>.eyebrow{margin-right:30px}.customer-auth-intro{font-size:14px;margin-bottom:24px}.customer-auth-close{right:12px;top:12px}main>.customer-auth-content{margin:16px}}
@media(prefers-reduced-motion:reduce){
 .customer-auth-dialog{scroll-behavior:auto}
 .customer-auth-dialog[open],.customer-auth-dialog[open]::backdrop,
 .customer-auth-dialog[open].is-closing,.customer-auth-dialog[open].is-closing::backdrop{animation:none}
}
