.commerce-shell{max-width:1050px;margin:0 auto;padding:24px 26px 65px}.commerce-heading{max-width:700px;margin:0 auto 30px;text-align:center}.commerce-heading h1{font-size:clamp(32px,5vw,48px);margin:12px 0 18px;line-height:1.12}.commerce-intro{max-width:590px;margin:auto;color:var(--muted);font-size:15px;line-height:1.8}.commerce-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,1fr);gap:25px;align-items:start}.commerce-main,.commerce-summary,.membership-card,.credit-card{min-width:0;background:#fffdfb;border:1px solid var(--line);border-radius:24px;padding:25px;box-shadow:0 12px 45px -30px #6d3df54a}.commerce-options{border:0;padding:0;margin:0 0 24px;min-width:0}.commerce-options legend{font-size:15px;font-weight:600;margin-bottom:12px}.commerce-choice{display:flex;gap:11px;align-items:flex-start;border:1px solid var(--line);border-radius:15px;padding:17px;margin:10px 0;cursor:pointer}.commerce-choice input,.commerce-extra input{flex:0 0 19px;width:19px;height:19px;accent-color:var(--violet);margin:2px 0 0}.commerce-choice:has(input:checked){border-color:var(--violet);background:var(--soft);box-shadow:0 0 0 1px var(--violet)}.commerce-choice strong,.commerce-extra strong{font-size:14px;font-weight:600;display:block}.commerce-detail{display:block;font-size:12px;line-height:1.7;color:var(--muted);margin-top:5px}.commerce-extra{display:flex;gap:12px;align-items:flex-start;padding:19px;border-radius:15px;background:linear-gradient(115deg,#fff1e7,#fceaf2);border:1px solid #f2d3dc;cursor:pointer}.commerce-timing,.commerce-support,.commerce-secure,.commerce-notice{font-size:12px;color:var(--muted);line-height:1.7}.commerce-support{margin-top:22px}.commerce-included{background:var(--soft);border-radius:13px;padding:15px;color:var(--violet);font-size:14px}.commerce-summary{position:sticky;top:24px}.commerce-summary h2{font-size:27px;margin:9px 0 24px;overflow-wrap:anywhere}.commerce-summary-line{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:12px 0;font-size:13px}.commerce-summary-line>span:last-child{white-space:nowrap}.commerce-total-row{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:22px;padding-top:20px}.commerce-total{font-size:29px;letter-spacing:-1px}.commerce-summary .primary-button{width:100%;margin:20px 0 7px;justify-content:center}.commerce-summary .text-button{width:100%;min-height:44px}.commerce-error{padding:13px;border-radius:12px;background:#fff0f2;color:#9e2047;font-size:13px;line-height:1.6}.commerce-notice{text-align:center}.membership-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px;align-items:stretch;margin-top:35px}.membership-card{position:relative;display:flex;flex-direction:column;padding:30px}.membership-card.recommended{border:1.5px solid #ad8af5;background:linear-gradient(150deg,#f7f1ff,#fffaf7 74%)}.membership-badge{position:absolute;top:-13px;left:23px;right:23px;max-width:max-content;border-radius:100px;background:var(--violet);color:#fff;padding:5px 13px;font-size:11px}.membership-card h2{font-size:33px;margin:13px 0}.membership-description{color:var(--muted);font-size:14px;min-height:47px;margin:0}.membership-price{display:flex;gap:5px;align-items:baseline;margin:20px 0 13px}.membership-price strong{font-size:39px;line-height:1.1;font-weight:600;letter-spacing:-1.5px}.membership-price>span{font-size:13px;color:var(--muted)}.commerce-benefits{list-style:none;padding:0;margin:12px 0 25px;font-size:13px;line-height:1.8}.commerce-benefits li{margin:9px 0;display:flex;gap:10px}.commerce-benefits li::before{content:'✓';color:var(--violet);flex:0 0 15px}.membership-card .primary-button{margin-top:auto;width:100%;justify-content:center;text-align:center;font-size:13px;padding:14px 12px;min-height:50px}.membership-terms{font-size:11px;line-height:1.7;color:var(--muted);margin:15px 0 0}.membership-grid~.commerce-secure{max-width:680px;text-align:center;margin:25px auto 8px}.commerce-skip{display:block;min-height:48px;margin:6px auto;font-size:13px}.credits-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.credit-card h2{font-size:27px;margin-top:0}.credit-card .membership-price{font-size:30px}.credit-card .primary-button{width:100%;justify-content:center;font-size:13px}.credit-balance{text-align:center;font-size:14px;color:var(--violet);margin:0 0 25px}.commerce-main [hidden]{display:none!important}
@media(max-width:760px){.commerce-layout,.membership-grid{grid-template-columns:1fr}.commerce-summary{position:static}.commerce-shell{padding:20px 18px 40px}.commerce-heading h1{font-size:35px}.commerce-main,.commerce-summary{padding:21px}.membership-card{padding:27px 24px}.membership-grid{gap:29px}.credits-grid{grid-template-columns:1fr}.commerce-heading{margin-bottom:25px}.commerce-intro{font-size:14px}.membership-description{min-height:0}.commerce-summary .primary-button{font-size:15px}}
@media(max-width:350px){.commerce-shell{padding-left:12px;padding-right:12px}.commerce-heading h1{font-size:30px}.commerce-main,.commerce-summary{padding:17px}.commerce-choice{padding:13px}.commerce-extra{padding:14px}.membership-card{padding:24px 19px}.membership-card h2{font-size:30px}.membership-card .primary-button{font-size:12px}.commerce-total{font-size:26px}}
#stripe-checkout{margin:28px auto;max-width:1024px}.gift-track{max-width:680px;margin:25px auto;padding:28px;background:#fffdfb;border:1px solid var(--line);border-radius:24px}.gift-track h2{overflow-wrap:anywhere}.gift-track audio{display:block;width:100%;margin:20px 0}.gift-track .primary-button{display:flex;justify-content:center;max-width:350px;min-height:48px;margin:20px 0}.gift-track details{margin-top:25px}.gift-track summary{cursor:pointer;padding:12px 0}.gift-lyrics{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9;color:var(--muted)}.commerce-shell>h1{text-align:center;margin:20px auto;overflow-wrap:anywhere}.commerce-shell>.eyebrow{display:block;text-align:center}.commerce-shell>.primary-button{display:flex;margin:25px auto;min-height:48px}.experience-footer a{color:inherit}@media(max-width:430px){.gift-track{padding:20px}.gift-track .primary-button{width:100%}}
.gift-cover{display:block;width:100%;max-width:680px;max-height:430px;object-fit:contain;background:var(--soft);border-radius:24px;margin:25px auto}.gift-dedication{max-width:620px;margin:28px auto;text-align:center;font-family:Georgia,serif;font-size:clamp(21px,4vw,28px);line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}.gift-live-lyric{min-height:115px;padding:22px 18px;background:var(--soft);border-radius:18px;text-align:center;font-size:clamp(19px,3.8vw,25px);line-height:1.6;color:var(--ink);overflow-wrap:anywhere}.gift-track video{display:block;width:100%;max-width:380px;aspect-ratio:9/16;background:var(--soft);object-fit:contain;border-radius:20px;margin:25px auto 10px}.gift-track>a.text-button{display:inline-flex;align-items:center;min-height:44px}.gift-pack,.gift-editor,.gift-invitation{max-width:680px;margin:28px auto;padding:26px;background:#fffdfb;border:1px solid var(--line);border-radius:24px}.gift-pack h2,.gift-editor h2,.gift-invitation h2{font-size:29px;line-height:1.25;margin:8px 0 20px}.gift-pack>.primary-button,.gift-invitation>.primary-button{display:inline-flex;min-height:48px;text-align:center;justify-content:center}.gift-editor>summary{font-weight:600;cursor:pointer;min-height:44px;display:list-item;padding:12px 0}.gift-editor form{margin-top:18px}.gift-editor label:not(.gift-check){display:block;margin:22px 0 9px;font-size:14px;font-weight:600}.gift-editor textarea,.gift-editor input[type=file]{display:block;width:100%;max-width:100%;font:inherit;font-size:16px}.gift-editor textarea{border:1px solid var(--line);border-radius:13px;background:#fff;padding:14px;line-height:1.6;resize:vertical;min-height:130px}.gift-check{display:flex;align-items:flex-start;gap:12px;min-height:44px;margin:20px 0;font-size:14px;line-height:1.7}.gift-check input{flex:0 0 20px;width:20px;height:20px;accent-color:var(--violet);margin-top:2px}.gift-editor form>.primary-button{min-height:48px}.gift-share{max-width:680px;text-align:center;justify-content:center;white-space:normal}.gift-invitation{text-align:center;background:linear-gradient(130deg,#f3eaff,#fff0ed)}.gift-invitation>.primary-button{margin-top:22px}.gift-refresh{display:block;min-height:48px;margin:20px auto}.commerce-shell>.commerce-secure{text-align:center}@media(max-width:430px){.gift-editor,.gift-pack,.gift-invitation{padding:20px}.gift-share{font-size:14px;padding:14px}.gift-pack>.primary-button,.gift-invitation>.primary-button,.gift-editor form>.primary-button{width:100%;font-size:14px}.gift-live-lyric{padding:18px 13px}.gift-editor input[type=file]{font-size:16px}}
.gift-track summary,.gift-track audio,.gift-editor input[type=file]{min-height:44px}
.member-login{display:grid;gap:12px;max-width:500px;margin:30px auto;text-align:left}.member-login label{font-size:16px;font-weight:650;color:var(--ink,#30253d)}.member-login input{width:100%;min-width:0;box-sizing:border-box;min-height:50px;padding:12px 14px;border:1px solid #d8cde4;border-radius:12px;background:#fff;font:16px Manrope,Arial,sans-serif}.member-login input[readonly]{background:#f5f0fa}.member-library{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px;margin:30px 0}.member-library .gift-track{margin:0}.member-library h2{overflow-wrap:anywhere}
.experience-footer nav{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 18px;margin-top:10px}.experience-footer nav a{display:inline-flex;align-items:center;min-height:44px;font-size:14px;text-underline-offset:3px}

.offer-price{font-size:clamp(30px,5vw,39px);letter-spacing:-1px;margin:20px 0}.membership-card ul,.credit-card ul{padding-left:20px;font-size:14px;line-height:1.8}.membership-card p,.credit-card p{overflow-wrap:anywhere}.commerce-shell>.text-button{display:flex;align-items:center;justify-content:center;text-align:center;min-height:48px;margin:15px auto;white-space:normal}.wallet-panel{max-width:760px;margin:26px auto;padding:26px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(130deg,#f7f0ff,#fff8f3)}.wallet-panel h2{font-size:30px;line-height:1.2}.wallet-panel .primary-button{display:inline-flex;justify-content:center;min-height:48px;margin:10px 12px 10px 0}.wallet-panel li{font-size:14px;line-height:1.7;overflow-wrap:anywhere}.wallet-panel details{margin-top:20px}.wallet-panel summary{min-height:44px;padding:12px 0;cursor:pointer}.wallet-panel .text-button{min-height:44px;white-space:normal}.wallet-actions{display:flex;flex-wrap:wrap;gap:12px}.wallet-panel .commerce-support{margin:12px 0}#billing-checkout{margin:28px auto;max-width:1024px}@media(max-width:430px){.wallet-panel{padding:20px}.wallet-panel .primary-button{width:100%;margin:10px 0}.wallet-actions{flex-direction:column}.credit-card,.membership-card{min-width:0}.offer-price{font-size:32px}}

.date-card{border:1px solid #e7dce9;border-radius:18px;padding:20px;min-width:0;margin:18px 0}.date-card legend{font-weight:700}.member-login label{display:block}.member-login select{width:100%;max-width:100%;min-height:48px;border-radius:12px;padding:12px;border:1px solid #ded4e8;background:#fff;color:#30253d;font:inherit}.member-login input,.member-login textarea{max-width:100%;box-sizing:border-box}.member-login button{min-height:44px}
.reaction-panel{padding:18px;margin-top:20px;background:var(--ivory);border-radius:18px}.reaction-panel video{max-width:100%;width:320px;max-height:570px;object-fit:contain;border-radius:16px}.reaction-panel label{display:flex;gap:10px;align-items:center;line-height:1.5}.reaction-panel input{width:20px;height:20px;flex:none}.wallet-panel input{max-width:100%;box-sizing:border-box;min-height:44px;width:100%;padding:12px;border:1px solid #ded4e8;border-radius:10px}.wallet-panel button,.wallet-panel a{min-height:44px}.commerce-shell{overflow-wrap:anywhere}

/* Reading, forms and safe areas apply throughout the customer account. */
.commerce-shell{padding-bottom:calc(60px + env(safe-area-inset-bottom,0px))}
.commerce-shell>p{max-width:700px;margin:18px auto;font-size:16px;line-height:1.75}
.commerce-shell>h2{margin-top:40px;font-size:32px;line-height:1.25}
.commerce-shell>span:not(.brand-illustration){display:block;text-align:center;font-size:12px;letter-spacing:.09em;color:var(--muted)}
.commerce-shell>.brand-illustration{margin-top:12px}
.commerce-detail,.commerce-timing,.commerce-support,.commerce-secure,.commerce-notice,.membership-terms{font-size:14px;line-height:1.75}
.commerce-intro{font-size:16px;line-height:1.8}
.commerce-choice strong,.commerce-extra strong,.commerce-summary-line{font-size:15px}
.commerce-summary .primary-button,.membership-card .primary-button,.credit-card .primary-button{font-size:15px;min-height:52px}
.membership-terms{margin-top:18px}
.commerce-shell>a:not(.skip-link){min-height:48px;display:flex;align-items:center;justify-content:center;text-align:center;white-space:normal}
.commerce-shell>input[readonly]{display:block;width:100%;max-width:650px;margin:22px auto;padding:14px;border:1px solid #9C8CA8;border-radius:14px;background:var(--white);color:var(--ink);font-size:16px}
.member-login{max-width:620px;gap:10px}
.member-login :is(input,select,textarea):not([type=checkbox]):not([type=radio]){font:16px/1.5 Manrope,Arial,sans-serif;min-height:50px;width:100%;padding:13px 14px;border:1px solid #9C8CA8;border-radius:12px;background:var(--white);color:var(--ink)}
.member-login textarea{min-height:120px;resize:vertical}
.member-login :is(input[type=checkbox],input[type=radio]){width:22px;height:22px;min-height:22px;vertical-align:middle;margin:0 12px 0 0}
.member-login label:has(input[type=checkbox]){display:flex;align-items:center;flex-direction:row-reverse;justify-content:flex-end;gap:12px;min-height:48px}
.member-login label:has(input[type=checkbox]) input{flex:none;margin:0}
.member-login p{font-size:15px;line-height:1.75}
.member-login h2{font-size:28px;line-height:1.3;margin:16px 0}
.member-login :is(.primary-button,.text-button){font-size:15px;min-height:50px;line-height:1.5}
.date-card{padding:20px;border-color:var(--line);background:var(--white)}
.date-card legend{font-size:16px;font-weight:600;padding:0 8px}
.date-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.wallet-panel p,.wallet-panel li{font-size:15px;line-height:1.75}
.experience-footer{font-size:13px;line-height:1.8}
@media(max-width:700px){.commerce-shell{padding-left:20px;padding-right:20px}.commerce-main,.commerce-summary{padding:21px 18px}.commerce-heading h1{font-size:38px}.commerce-intro{font-size:16px}.membership-card{padding:28px 22px}.membership-card .primary-button{font-size:15px}.commerce-heading .brand-illustration{margin-top:6px}.gift-pack,.gift-editor,.gift-invitation{padding:22px 18px}.commerce-choice,.commerce-extra{padding:17px 14px}.commerce-detail{font-size:14px}.member-login{margin-top:26px}.date-card{padding:16px}.commerce-shell>h1{font-size:38px;line-height:1.15}}
@media(max-width:350px){.commerce-shell{padding-left:14px;padding-right:14px}.commerce-heading h1,.commerce-shell>h1{font-size:34px}.commerce-main,.commerce-summary,.membership-card{padding:22px 16px}.commerce-choice,.commerce-extra{padding:15px 12px}.date-row{gap:12px}.commerce-summary-line{flex-wrap:wrap;gap:4px 14px}}

.payment-mode-notice{max-width:760px;margin:0 auto 14px;padding:12px 18px;border:1px solid #c6b2ff;border-radius:16px;background:#f0eaff;color:#36215e;text-align:center;font:600 14px/1.5 inherit}.payment-mode-notice::before{content:"● ";color:#6d3df5}@media(max-width:600px){.payment-mode-notice{margin:0 14px 12px;font-size:13px;padding:10px 12px}}
