/* Customer login uses the established storefront palette and typography. */
.customer-address-card,.customer-card+.customer-card{margin-top:1.25rem}.customer-address-actions{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.customer-address-actions form{display:block}.customer-card .customer-check{width:20px;min-height:20px;height:20px;vertical-align:middle;margin-right:.4rem}.customer-card select{width:100%;min-width:0;padding:.75rem;border:1px solid #d6c6ac;border-radius:.5rem;background:white;color:#29231e;font-size:16px}.customer-auth{scroll-margin-top:90px}
.customer-auth [hidden]{display:none!important}.customer-location-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.customer-card input[readonly]{background:#f7f4ef;color:#4e493e;cursor:default}.customer-checkout h1{font-size:2rem;margin:.25rem 0 1rem}.customer-checkout .customer-card{margin-top:.75rem}.customer-checkout .customer-card h2{font-size:1.55rem}.customer-checkout .customer-link{display:inline-block;margin:.5rem 0}.customer-location-fields .shop-field{min-width:0}
@media(max-width:440px){.customer-location-fields{grid-template-columns:1fr;gap:.8rem}.customer-checkout h1{font-size:1.8rem}}
.customer-auth{padding:2rem 0 4rem}.customer-auth-wrap{max-width:620px!important}.customer-auth h1{font-size:2.5rem;line-height:1.15;margin:.75rem 0}.customer-back{display:block;margin-bottom:1.5rem;font-size:.8rem;color:#766651}.customer-lead{font-size:.95rem;color:#6f665b;line-height:1.7;margin-bottom:1.5rem}.customer-card{padding:1.75rem;min-width:0}.customer-card h2{font-size:1.8rem;margin-bottom:.75rem}.customer-card h3{font-size:1.5rem;margin:1.5rem 0 .75rem}.customer-card>p{font-size:.9rem;line-height:1.7;overflow-wrap:anywhere}.customer-card form{display:grid;gap:1rem}.customer-card .shop-field{display:grid;gap:.5rem;min-width:0;font-size:.85rem}.customer-card input{width:100%;min-width:0;min-height:48px;padding:.75rem;border:1px solid #d6c6ac;border-radius:.5rem;background:#fff;color:#29231e;font-size:16px}.customer-card input:focus{outline:2px solid #c5a059;outline-offset:2px}.customer-card .shop-button{width:100%;min-height:48px;justify-content:center}.customer-card button:disabled{opacity:.5;cursor:not-allowed}.customer-mobile{display:flex;align-items:center;border:1px solid #d6c6ac;border-radius:.5rem;min-width:0;background:#fff}.customer-mobile>span{padding:0 .85rem;border-right:1px solid #e7dac6;flex-shrink:0;font-weight:600}.customer-mobile>input{border:0;border-radius:0 .5rem .5rem 0}.customer-tabs{display:flex;gap:.75rem;margin-bottom:1.5rem;flex-wrap:wrap}.customer-tabs a{flex:1;padding:.7rem .5rem;border-bottom:2px solid #e7dac6;text-align:center;font-size:.8rem;white-space:nowrap}.customer-tabs a[aria-current]{border-color:#b08649;color:#72501e;font-weight:700}.customer-demo,.customer-notice{padding:1rem;background:#faf3e6;border:1px solid #e5d1aa;border-radius:.6rem;margin:1rem 0;color:#685028;font-size:.85rem;line-height:1.6}.customer-demo strong{display:block}.customer-demo [data-demo-code]{font-size:1.6rem;letter-spacing:.3em;margin:.4rem 0}.customer-demo small{display:block;font-size:.78rem;line-height:1.6;margin-top:.25rem}.customer-muted{font-size:.8rem!important;color:#786e62;line-height:1.6;margin:.75rem 0}.customer-link{display:inline-block;margin:1rem 0 .25rem;font-size:.85rem;text-decoration:underline;text-underline-offset:3px}.customer-divider{display:flex;align-items:center;gap:1rem;margin:1.5rem 0;color:#877b6b;font-size:.8rem}.customer-divider:before,.customer-divider:after{content:"";height:1px;background:#eadbc8;flex:1}.customer-secondary{display:grid;gap:1rem;margin-top:1.5rem}.customer-secondary small{font-size:.75rem;color:#786e62}.customer-text-button{background:transparent;border:0;text-align:left;text-decoration:underline;text-underline-offset:3px;font-size:.85rem;min-height:36px;color:#72501e}.customer-auth .shop-form-error{margin:1rem 0}.customer-auth input[type=hidden]{display:none}
@media(max-width:600px){.customer-auth{padding:1.25rem 0 2.5rem}.customer-auth h1{font-size:2.15rem}.customer-card{padding:1.2rem}.customer-tabs{gap:.5rem}.customer-tabs a{font-size:.75rem}.customer-auth-wrap{padding-left:1rem!important;padding-right:1rem!important}}
.vsv-shop.customer-auth{padding-top:calc(var(--commerce-nav-height,80px) + 1rem);scroll-margin-top:0}.customer-auth.customer-checkout h1{font-size:2rem}.customer-location-ready{position:absolute!important;width:1px;height:1px;padding:0!important;margin:-1px!important;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.customer-otp-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px 16px;margin-top:1.3rem;padding-top:1.15rem;border-top:1px solid #e8dbc6}.customer-otp-actions form{display:block!important;margin:0}.customer-otp-action{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;border:1px solid #d9c7aa;background:#fffaf3;border-radius:100px;padding:6px 12px 6px 7px;color:#785d35;font-size:.8rem;font-weight:600;cursor:pointer;text-decoration:none}.customer-otp-action:hover:not(:disabled){background:#f3e6d2}.customer-otp-action:disabled{opacity:.5;cursor:default}.customer-action-icon{display:inline-flex;width:29px;height:29px;align-items:center;justify-content:center;background:#eee1cc;border-radius:50%}.customer-resend-status{font-size:.72rem;color:#897a64;white-space:nowrap}
@media(max-width:600px){.customer-auth.customer-checkout h1{font-size:1.8rem}}

/* Keep transaction screens compact even when the site's theme scales rem units. */
.customer-auth.customer-access{padding-top:calc(var(--commerce-nav-height,80px) + 16px);padding-bottom:100px}
.customer-access .customer-auth-wrap{max-width:560px!important}
.customer-access .customer-back{font-size:13px;line-height:20px;margin:0 0 10px}
.customer-access .customer-access-progress{font-size:12px;line-height:18px;color:#857155;margin:0 0 4px}
.customer-access h1,.customer-access.customer-checkout h1{font-size:28px;line-height:34px;margin:0 0 6px}
.customer-access .customer-lead{font-size:14px;line-height:21px;margin:0 0 14px}
.customer-access .customer-card{padding:20px;margin-top:0;border-radius:18px}
.customer-access .customer-card h2{font-size:22px;line-height:27px;margin:0 0 6px}
.customer-access .customer-card>p{font-size:14px;line-height:21px;margin:0 0 12px}
.customer-access .customer-card form{gap:12px}
.customer-access .customer-card .shop-field{font-size:14px;line-height:20px;gap:6px;margin:0}
.customer-access .customer-card input{min-height:44px;padding:10px 12px;font-size:16px;line-height:22px}
.customer-access .customer-card .shop-button{min-height:46px;padding:10px 16px;font-size:15px;line-height:22px;letter-spacing:0}
.customer-access .customer-tabs{gap:8px;margin:0 0 14px}
.customer-access .customer-tabs a{font-size:13px;line-height:18px;padding:8px 4px;white-space:normal}
.customer-access .customer-demo{font-size:13px;line-height:19px;padding:10px 12px;margin:12px 0}
.customer-access .customer-demo small{font-size:12px;line-height:18px}
.customer-access .customer-demo-compact{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:4px 12px}
.customer-access .customer-demo-compact [data-demo-code]{display:inline;font-size:20px;line-height:26px;letter-spacing:3px;margin:0 0 0 6px}
.customer-access .customer-demo-compact details{font-size:12px;line-height:18px}
.customer-demo-compact summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.customer-access .customer-otp-actions{gap:8px 12px;margin-top:12px;padding-top:12px;justify-content:flex-start}
.customer-access .customer-otp-action{font-size:13px;line-height:18px;min-height:44px;padding:6px 10px;gap:6px}
.customer-access .customer-resend-status{font-size:12px;line-height:18px;order:3;flex-basis:100%}
.customer-access .customer-action-icon{width:24px;height:24px}
.customer-access .customer-divider{font-size:13px;line-height:18px;margin:12px 0;gap:12px}
.customer-access .customer-muted{font-size:12px!important;line-height:18px;margin:8px 0 0}
.customer-access .shop-form-error,.customer-access .customer-notice{font-size:14px;line-height:21px;padding:10px 12px;margin:10px 0}
@media(max-width:600px){
 .customer-auth.customer-access{padding-top:calc(var(--commerce-nav-height,80px) + 10px)}
 .customer-access .customer-auth-wrap{padding-left:14px!important;padding-right:14px!important}
 .customer-access h1,.customer-access.customer-checkout h1{font-size:25px;line-height:30px}
 .customer-access .customer-card{padding:16px}
 .customer-access .customer-card h2{font-size:21px;line-height:26px}
}
@media(max-width:360px){.customer-access .customer-otp-actions form{flex:1;min-width:0}.customer-access .customer-otp-action{width:100%;font-size:12px;padding:6px;gap:4px}.customer-access .customer-action-icon{width:20px;height:20px;flex-shrink:0}}

/* Compact address entry, with paired contact details and address preferences. */
.customer-auth.customer-address-page{padding-top:calc(var(--commerce-nav-height,80px) + 12px);padding-bottom:100px}
.customer-address-page .customer-auth-wrap{max-width:680px!important}
.customer-address-page h1,.customer-address-page.customer-checkout h1{font-size:28px;line-height:34px;margin:0 0 6px}
.customer-address-page .customer-link{font-size:13px;line-height:20px;margin:4px 0 10px}
.customer-address-page .customer-address-form-card{padding:18px;margin-top:0;border-radius:18px}
.customer-address-page .customer-address-form-card h2{font-size:22px;line-height:28px;margin:0 0 12px}
.customer-address-form-card form{gap:8px}
.customer-address-form-card .shop-field{gap:4px;font-size:13px;line-height:18px;margin:0}
.customer-address-form-card input,.customer-address-form-card select{min-height:44px;height:44px;padding:9px 10px;font-size:16px;line-height:24px}
.customer-address-form-card .customer-location-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px}
.customer-address-form-card [data-city-select],.customer-address-form-card [data-city-display]{grid-column:1/-1}
.customer-contact-fields,.customer-address-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0}
.customer-address-options>label{display:flex;align-items:center;gap:8px;min-height:44px;font-size:13px;line-height:18px;cursor:pointer}
.customer-address-form-card .customer-check{width:18px;height:18px;min-height:18px;padding:0;margin:0;flex-shrink:0;accent-color:#92703e}
.customer-address-form-card .shop-button{min-height:46px;padding:10px 14px;font-size:14px;line-height:22px;letter-spacing:0}
.customer-address-form-card .customer-muted:not(.customer-location-ready){font-size:12px!important;line-height:18px;margin:0}
@media(max-width:600px){.customer-address-page .customer-auth-wrap{padding-left:14px!important;padding-right:14px!important}.customer-address-page h1,.customer-address-page.customer-checkout h1{font-size:25px;line-height:30px}.customer-address-page .customer-address-form-card{padding:14px}.customer-address-options>label{gap:6px;font-size:12px}}
.customer-address-page.customer-checkout .customer-auth-wrap{position:relative}
.customer-address-page.customer-checkout h1{padding-right:70px;margin-bottom:10px}
.customer-address-page .customer-address-back{position:absolute;right:24px;top:0;min-height:34px;display:flex;align-items:center;margin:0}
.customer-address-extra{font-size:13px;line-height:18px}
.customer-address-extra>summary{min-height:30px;display:list-item;align-content:center;cursor:pointer;color:#775624}
.customer-address-extra[open]>.shop-field{margin-top:6px}
@media(max-width:600px){.customer-address-page .customer-address-back{right:14px}}
.customer-address-page.customer-checkout .customer-address-form-card form{gap:6px}
.customer-address-page.customer-checkout .customer-address-form-card .shop-field{font-size:12px;line-height:16px;gap:2px}
.customer-address-page.customer-checkout .customer-address-form-card input:not([type=checkbox]),.customer-address-page.customer-checkout .customer-address-form-card select{height:40px;min-height:40px;padding:8px 10px;line-height:22px}
.customer-address-page.customer-checkout .customer-location-fields{gap:6px 10px}
.customer-address-page.customer-checkout .customer-address-extra>summary{min-height:26px;font-size:12px}
.customer-address-page.customer-checkout .customer-address-options>label{min-height:40px;font-size:12px;line-height:16px}
