
/* Public wallet enrollment: polished desktop preview and comfortable mobile flow. */
.customer-enrollment{--enrollment-ink:#29231f;--enrollment-muted:#81766c;--enrollment-accent:#3e795e;--enrollment-paper:#fffdfa;--enrollment-line:#eadfce;max-width:1180px;min-height:100vh;padding:clamp(18px,3vw,40px);color:var(--enrollment-ink);background:radial-gradient(ellipse at 12% 7%,#fff9e9 0,transparent 34%),#f5eddf;font-family:Inter,Arial,sans-serif}
.customer-enrollment .customer-business-header{display:flex;align-items:center;justify-content:space-between;padding:0 0 22px;margin-bottom:clamp(24px,4vw,44px);border-bottom:1px solid #dfd1bc}
.customer-enrollment .customer-business-identity{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}
.customer-enrollment .customer-business-identity img{width:48px;height:48px;object-fit:cover;border-radius:50%;box-shadow:0 3px 12px #30241518}
.customer-enrollment .customer-business-identity span{display:grid;gap:1px}
.customer-enrollment .customer-business-identity strong{font-size:18px;line-height:1.2}
.customer-enrollment .customer-business-identity small,.customer-header-note{font-size:12px;color:var(--enrollment-muted)}
.customer-enrollment .customer-platform{color:var(--enrollment-ink)}
.customer-enrollment .customer-platform .brand-name{font-size:18px}
.customer-enrollment-layout{grid-template-columns:minmax(290px,.92fr) minmax(360px,1.08fr);gap:clamp(26px,6vw,76px);align-items:start}
.customer-enrollment .customer-preview-column{position:sticky;top:22px;padding-top:8px}
.customer-enrollment .customer-preview-heading{margin:0 0 20px}
.customer-enrollment .customer-step-label{display:inline-block;color:var(--enrollment-accent);font-size:10px;font-weight:750;letter-spacing:.13em}
.customer-enrollment .customer-preview-heading h2{max-width:390px;margin:8px 0 6px;color:#302820;font-family:Georgia,serif;font-size:clamp(23px,2.6vw,31px);font-weight:500;line-height:1.14;letter-spacing:-.025em}
.customer-enrollment .customer-preview-heading p{margin:0;color:var(--enrollment-muted);font-size:13px}
.customer-enrollment .customer-preview-column .loyalty-card{position:relative;top:auto;width:min(100%,445px);margin:0 auto;box-shadow:0 22px 54px #48361d20,0 0 38px color-mix(in srgb,var(--business-color,#3e795e) 11%,transparent);animation:customer-card-arrive .7s cubic-bezier(.2,.75,.25,1) both}
.customer-enrollment .customer-preview-assurance{display:flex;gap:10px;align-items:flex-start;width:min(100%,445px);margin:17px auto 0;padding:13px 15px;border:1px solid #e8ddca;border-radius:16px;background:#fff9ef;color:#776b5d;font-size:12px}
.customer-enrollment .customer-preview-assurance>span{color:#bf9652;font-size:18px;line-height:1}
.customer-enrollment .customer-preview-assurance p{margin:0}
.customer-enrollment .customer-form-column{min-width:0}
.customer-enrollment .customer-powered{display:flex;align-items:center;justify-content:center;gap:9px;margin:0 0 13px;color:#968b80;font-size:12px}
.customer-enrollment .customer-powered .brand-name{color:#51463c;font-size:19px}
.customer-enrollment .customer-powered .return-mark{width:25px;height:25px}
.customer-enrollment .customer-form-card{padding:clamp(22px,3.4vw,38px);border:1px solid #eee4d6;border-radius:28px;background:var(--enrollment-paper);box-shadow:0 18px 50px #523c4912;animation:customer-card-arrive .55s .08s cubic-bezier(.2,.75,.25,1) both}
.customer-enrollment .customer-form-card h1{margin:9px 0 7px;color:#2a2824;font-family:Georgia,serif!important;font-size:clamp(27px,3.2vw,37px);font-weight:500;line-height:1.12;letter-spacing:-.035em}
.customer-enrollment .customer-form-intro{margin:0;color:var(--enrollment-muted);font-size:14px;line-height:1.65}
.customer-enrollment .customer-reward-callout{display:flex;align-items:center;gap:13px;margin:20px 0 23px;padding:14px 16px;border:1px solid #eee1c4;border-radius:18px;background:linear-gradient(110deg,#fbf3df,#fffaf0)}
.customer-enrollment .customer-reward-icon{display:grid;place-items:center;flex:0 0 37px;width:37px;height:37px;border-radius:13px;background:#e8d7a8;color:#725927;font-size:18px}
.customer-enrollment .customer-reward-callout>span:last-child{display:grid;gap:2px;min-width:0}
.customer-enrollment .customer-reward-callout strong{font-size:14px;overflow-wrap:anywhere}
.customer-enrollment .customer-reward-callout small{color:#8a7a62;font-size:11px}
.customer-enrollment .customer-join-form{display:grid;gap:15px}
.customer-enrollment .customer-join-form>label,.customer-enrollment .customer-optional-fields>label{display:grid;gap:7px;color:#554c43;font-size:12px;font-weight:650}
.customer-enrollment .customer-join-form label>span:not(.customer-step-label){font-weight:450;color:#9a8c7d}
.customer-enrollment .customer-join-form input:not([type=checkbox]),.customer-enrollment .customer-join-form select{width:100%;height:51px;padding:0 14px;border:1px solid #e3d8c7;border-radius:14px!important;background:#fffefa;color:#332e29;font:inherit;font-size:14px!important;transition:border-color .18s,box-shadow .18s,background .18s}
.customer-enrollment .customer-join-form input::placeholder{color:#aaa094}
.customer-enrollment .customer-join-form input:focus,.customer-enrollment .customer-join-form select:focus{border-color:var(--enrollment-accent);outline:0;box-shadow:0 0 0 4px color-mix(in srgb,var(--enrollment-accent) 13%,transparent)}
.customer-enrollment .customer-optional-fields{display:grid;grid-template-columns:1fr;gap:13px}
.customer-enrollment .customer-phone-row{display:grid;grid-template-columns:minmax(156px,.9fr) minmax(130px,1.1fr);gap:8px}
.customer-enrollment #phone-country{padding:0 9px;font-size:12px!important}
.customer-enrollment .customer-consent{margin-top:1px}
.customer-enrollment .customer-consent label{display:grid;grid-template-columns:18px 1fr;gap:10px;align-items:start;color:#766b60;font-size:11px;font-weight:450;line-height:1.55}
.customer-enrollment .customer-consent input[type=checkbox]{width:17px;height:17px;margin:1px 0 0;accent-color:var(--enrollment-accent)}
.customer-enrollment .customer-consent a{color:#356f55;font-weight:650}
.customer-enrollment .customer-consent small{display:block;color:#9a8c7d;font-size:10px}
.customer-enrollment .customer-join-button{display:flex;align-items:center;justify-content:center;gap:10px;min-height:56px;margin-top:5px;border:0;border-radius:17px!important;background:var(--business-color,#243f35);box-shadow:0 8px 18px color-mix(in srgb,var(--business-color,#243f35) 20%,transparent);font-size:16px;font-weight:700;transition:transform .18s,box-shadow .18s,filter .18s}
.customer-enrollment .customer-join-button:hover{transform:translateY(-2px);filter:brightness(1.08);box-shadow:0 12px 23px color-mix(in srgb,var(--business-color,#243f35) 25%,transparent)}
.customer-enrollment .customer-join-button .icon{width:19px;height:19px}
.customer-enrollment .customer-form-footnote,.customer-enrollment .customer-privacy-note{color:#92877b;font-size:10px;line-height:1.6}
.customer-enrollment .customer-form-footnote{text-align:center;margin:0}
.customer-enrollment .customer-program-details{margin-top:20px;padding-top:15px;border-top:1px solid #eee5d8}
.customer-enrollment .customer-program-details summary{color:#5d715f;font-weight:650}
.customer-enrollment .customer-program-details p{color:var(--enrollment-muted);font-size:12px}
.customer-enrollment .customer-form-error{margin:13px 0;padding:12px 14px;border:1px solid #e9b7a9;border-radius:14px;background:#fff4ef;color:#a3422d;font-size:13px}
.customer-enrollment .customer-privacy-note{max-width:500px;margin:13px auto 0;text-align:center}
.customer-enrollment .customer-footer{gap:14px;margin-top:34px;padding-top:17px;border-top:1px solid #dfd1bc;color:#8c8072}
.customer-enrollment .customer-footer a{color:#5b745f}
.customer-enrollment .customer-welcome-card .wallet-buttons{gap:10px;margin:20px 0}
.customer-enrollment .customer-welcome-card .wallet-buttons>*{flex:1}
.customer-enrollment .customer-welcome-card>.button{border-radius:15px!important}
.customer-enrollment .customer-consent-update{margin-top:18px;padding-top:15px;border-top:1px solid #eee5d8}
@keyframes customer-card-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.vuelve-landing .vl-hero-copy,.vuelve-landing .vl-hero-scene,.vuelve-landing>.vl-categories,.vuelve-landing>.vl-how,.vuelve-landing>.vl-feature-band,.vuelve-landing>.vl-paper,.vuelve-landing>.vl-pricing,.vuelve-landing>.vl-faq,.vuelve-landing>.vl-close,.trial-onboarding,.login-v2>section,.owner-layout>.owner-main>*{animation:customer-card-arrive .5s ease-out both}
.vuelve-landing .vl-button,.button,.nav-item,.panel,.owner-ticket{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
@media(max-width:820px){.customer-enrollment-layout{grid-template-columns:1fr;gap:22px}.customer-enrollment .customer-preview-column{position:relative;top:auto;grid-row:1;padding-top:0}.customer-enrollment .customer-preview-heading{text-align:center;margin-bottom:14px}.customer-enrollment .customer-preview-heading h2{margin-left:auto;margin-right:auto}.customer-enrollment .customer-preview-heading p{font-size:12px}.customer-enrollment .customer-preview-column .loyalty-card{width:min(100%,420px)}.customer-enrollment .customer-preview-assurance{display:none}.customer-enrollment .customer-form-column{grid-row:2}.customer-enrollment .customer-business-header{margin-bottom:20px}}
@media(max-width:520px){.customer-enrollment{padding:14px 14px 22px}.customer-enrollment .customer-business-header{padding-bottom:14px}.customer-enrollment .customer-business-identity img{width:42px;height:42px}.customer-enrollment .customer-business-identity strong{font-size:15px}.customer-enrollment .customer-business-identity small{font-size:10px}.customer-enrollment .customer-header-note{max-width:112px;text-align:right;font-size:10px}.customer-enrollment .customer-preview-heading h2{font-size:24px}.customer-enrollment .customer-preview-heading p{max-width:300px;margin:auto}.customer-enrollment .customer-form-card{padding:22px 18px;border-radius:24px}.customer-enrollment .customer-form-card h1{font-size:29px}.customer-enrollment .customer-form-intro{font-size:13px}.customer-enrollment .customer-reward-callout{margin:17px 0 19px;padding:12px}.customer-enrollment .customer-optional-fields{grid-template-columns:1fr;gap:14px}.customer-enrollment .customer-phone-row{grid-template-columns:minmax(126px,.9fr) minmax(100px,1.1fr);gap:7px}.customer-enrollment #phone-country{padding:0 7px;font-size:11px!important}.customer-enrollment .customer-join-form{gap:13px}.customer-enrollment .customer-join-button{min-height:54px}.customer-enrollment .customer-footer{flex-wrap:wrap;justify-content:center;font-size:10px}.customer-enrollment .customer-welcome-card .wallet-buttons{flex-direction:column}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
