/* 2026-10-28: CHECKOUT VIEW + pricing v3 cards (sa-checkout-view.js, sa-packages.js). */

/* ---------- 2026-10-28 v2: four "pages" (sa-checkout-view.js) ---------- */
/* Payment waits off-screen, fully loaded (never display:none, never moved: Stripe/PayPal iframes keep their state). */
body.order-page .sa-unified-layout { position:relative; }
body:not(.sa-co-view) #embeddedCheckoutSection { position:absolute !important; left:-10000px !important; top:0 !important; width:min(560px, calc(100vw - 32px)) !important;
  pointer-events:none; }
body.order-page:not(.sa-co-view) .sa-unified-layout { grid-template-columns:minmax(0, 640px); justify-content:center; }
.sa-co-bar { display:none; }

/* Options + Unlock live on the song page only; summary + upsell on the checkout only. */
body:not(.sa-v-song) #saPackages, body:not(.sa-v-song) .sa-co-open { display:none !important; }
#saPackages .sa-add-verse, #saPackages .sa-pk-ready, #saPackages .sa-pk-safe { display:none !important; }
.sa-cos, .sa-cos-up, .sa-who { display:none; }
body.sa-co-view .sa-cos { display:block; }
body.sa-co-view .sa-cos-up:not([hidden]) { display:block; }
/* 2026-11-04: the old "song · we'll send it to … Change" line is gone for good (it flashed for a second after
   returning from Stripe / an email). "Edit song" changes the story and the contact details. */
.sa-who { display:none !important; }

/* The quiz "Continue" button is not needed on these pages (each page has its own big button). */
body.sa-v-contact .quiz-nav, body.sa-v-studio .quiz-nav, body.sa-v-song .quiz-nav { display:none !important; }
/* 1. contact page: name + email + "Get my free preview" only */
body.sa-v-contact .checkout-reactions, body.sa-v-contact .sa-checkout-bottom, body.sa-v-contact #saWarm { display:none !important; }
/* 2. studio: only the studio */
body.sa-v-studio .sa-unified-step > .eyebrow, body.sa-v-studio .sa-unified-step > h2, body.sa-v-studio .sa-unified-step > .checkout-intro,
body.sa-v-studio #saOrderChoices > .sa-panel-title, body.sa-v-studio #saOrderChoices > .sa-panel-caption, body.sa-v-studio #saOrderChoices > label.field,
body.sa-v-studio .checkout-reactions, body.sa-v-studio .sa-checkout-bottom, body.sa-v-studio #saWarm { display:none !important; }
/* 3. song page: no form fields (unless "Change"), preview → options → Unlock */
body.sa-v-song .sa-unified-step > .eyebrow, body.sa-v-song .sa-unified-step > h2, body.sa-v-song .sa-unified-step > .checkout-intro { display:none !important; }
body.sa-v-song:not(.sa-v-edit) #saOrderChoices > .sa-panel-title, body.sa-v-song:not(.sa-v-edit) #saOrderChoices > .sa-panel-caption,
body.sa-v-song:not(.sa-v-edit) #saOrderChoices > label.field { display:none !important; }
body.sa-v-song .sa-unified-step { animation:sa-co-in .35s ease-out both; }
body.sa-v-song #saPackages { margin-top:26px; }

.sa-who { align-items:center; justify-content:space-between; gap:10px; margin:0 0 16px; padding:11px 14px; border:1px solid #efe1d8; border-radius:14px; background:#fffaf6; font-size:13.5px; line-height:1.4; color:#5a4e46; }
.sa-who-t { min-width:0; overflow-wrap:anywhere; }
.sa-who b { color:#26211d; }
body.order-page .sa-who .sa-who-edit { all:unset; flex:none; cursor:pointer; font-size:13px; font-weight:700; color:#b95854; text-decoration:underline; text-underline-offset:3px; }

.sa-co-open { margin:18px 0 6px; text-align:center; }
#saOrderChoices .sa-co-open .sa-co-open-btn { display:flex !important; align-items:center; justify-content:center; gap:10px; width:100% !important; min-height:64px; margin:0 !important;
  padding:16px 22px !important; border:0 !important; border-radius:999px !important; cursor:pointer;
  background:linear-gradient(180deg,#2e8b57,#1f6e43) !important; color:#fff !important; font-family:inherit !important; font-weight:800 !important; font-size:19px !important; line-height:1.15 !important; letter-spacing:.1px;
  box-shadow:0 14px 30px rgba(31,110,67,.30), inset 0 1px 0 rgba(255,255,255,.18) !important; -webkit-tap-highlight-color:transparent; animation:sa-co-pulse 2.6s ease-in-out infinite; }
.sa-co-open-ic { font-size:17px; }
.sa-co-open-arrow { display:inline-block; transition:transform .2s; }
.sa-co-open-btn:hover .sa-co-open-arrow { transform:translateX(3px); }
.sa-co-open-eta { margin:11px 0 0; font-size:14.5px; font-weight:700; color:#1f6e43; }
.sa-co-open-s { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:4px 16px; margin:6px 0 0; font-size:13px; font-weight:600; line-height:1.3; color:#8a7a72; }
.sa-co-open-s span { display:inline-flex; align-items:center; gap:5px; white-space:nowrap; }
.sa-co-open-s svg { flex:none; color:#2e8b57; }
@keyframes sa-co-in { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:none; } }
@keyframes sa-co-pulse { 0%,100% { box-shadow:0 14px 30px rgba(31,110,67,.30), 0 0 0 0 rgba(46,139,87,.35); } 50% { box-shadow:0 14px 30px rgba(31,110,67,.30), 0 0 0 10px rgba(46,139,87,0); } }

/* 4. checkout: order summary (Shopify-style, collapsible on phones) + Extra Verse upsell */
.sa-cos { margin:0 0 14px; border:1px solid #eee3db; border-radius:18px; background:#fbf7f3; overflow:hidden; }
body.order-page .sa-cos .sa-cos-head { all:unset; box-sizing:border-box; display:flex; width:100%; align-items:center; justify-content:space-between; gap:10px; padding:15px 18px; cursor:pointer; }
.sa-cos-head-l { font-size:15px; font-weight:700; color:#b95854; }
.sa-cos-head-l i { font-style:normal; display:inline-block; margin-left:4px; transition:transform .2s; }
.sa-cos.is-open .sa-cos-head-l i { transform:rotate(180deg); }
.sa-cos-head-total { font-size:19px; font-weight:800; color:#26211d; }
.sa-cos-body { display:none; padding:2px 18px 16px; border-top:1px solid #eee3db; }
.sa-cos.is-open .sa-cos-body { display:block; }
.sa-cos-row { display:flex; align-items:center; gap:12px; padding:12px 0; border-bottom:1px dashed #eadfd6; }
.sa-cos-art { flex:none; display:grid; place-items:center; width:46px; height:46px; border-radius:12px; overflow:hidden; background:#fff; border:1px solid #eee3db; }
.sa-cos-art img { width:46px; height:46px; object-fit:cover; display:block; }
.sa-cos-art-song { background:linear-gradient(160deg,#5a3540,#2b1f24); color:#ffe2c9; font-size:21px; border:0; }
.sa-cos-art-verse { background:linear-gradient(160deg,#f3b9a6,#c9705f); color:#fff; font-size:21px; font-weight:700; border:0; }
.sa-cos-n { flex:1; min-width:0; display:flex; flex-direction:column; }
.sa-cos-n b { font-size:15px; color:#26211d; }
.sa-cos-n small { margin-top:2px; font-size:12.5px; color:#7a6a62; line-height:1.35; }
body.order-page .sa-cos .sa-cos-rm { all:unset; cursor:pointer; color:#b95854; font-weight:700; text-decoration:underline; }
.sa-cos-p { flex:none; display:flex; flex-direction:column; align-items:flex-end; line-height:1.2; }
.sa-cos-p s { font-size:12.5px; color:#a39890; }
.sa-cos-p b { font-size:15px; color:#26211d; }
.sa-cos-total { display:flex; align-items:baseline; justify-content:space-between; padding:14px 0 2px; font-size:17px; font-weight:800; color:#26211d; }
.sa-cos-total-r { display:flex; align-items:baseline; gap:8px; }
.sa-cos-total-r s { font-size:14px; font-weight:500; color:#a39890; }
.sa-cos-total-r small { font-size:12px; font-weight:600; color:#8a7a72; }
.sa-cos-total-r b { font-size:22px; }
.sa-cos-save { margin:2px 0 0; text-align:right; font-size:12.5px; font-weight:800; color:#1f6e43; letter-spacing:.3px; text-transform:uppercase; }
.sa-cos-save:empty { display:none; }
body.order-page .sa-cos .sa-cos-change { all:unset; display:inline-block; margin-top:10px; cursor:pointer; font-size:13px; font-weight:700; color:#b95854; text-decoration:underline; text-underline-offset:3px; }

.sa-cos-up { margin:0 0 16px; }
.sa-cos-up-h { margin:0 0 8px; font-size:14px; font-weight:800; color:#26211d; }
.sa-cos-up-card { display:flex; align-items:center; gap:12px; padding:12px 14px; border:1.5px dashed #e3b8a8; border-radius:16px; background:#fff; }
.sa-cos-up-art { flex:none; display:grid; place-items:center; width:46px; height:46px; border-radius:12px; background:linear-gradient(160deg,#f3b9a6,#c9705f); color:#fff; font-size:21px; font-weight:700; }
.sa-cos-up-t { flex:1; min-width:0; display:flex; flex-direction:column; }
.sa-cos-up-t b { font-size:15px; color:#26211d; }
.sa-cos-up-t small { margin-top:2px; font-size:12.5px; color:#7a6a62; line-height:1.35; }
.sa-cos-up-p { flex:none; display:flex; flex-direction:column; align-items:flex-end; line-height:1.2; }
.sa-cos-up-p s { font-size:12px; color:#a39890; }
.sa-cos-up-p b { font-size:15px; color:#26211d; }
body.order-page .sa-cos-up .sa-cos-up-add { flex:none; width:auto !important; min-width:0 !important; margin:0 !important; padding:10px 16px !important; border:0 !important; border-radius:12px !important;
  background:#b95854 !important; color:#fff !important; font-family:inherit !important; font-weight:800 !important; font-size:14px !important; cursor:pointer; box-shadow:none !important; }
body.sa-co-view #saOrderChoices > .sa-who, body.sa-co-view #saPackages, body.sa-co-view .sa-co-open { display:none !important; }
body.sa-co-view .sa-order-details-card, body.sa-co-view .sa-order-context { display:none !important; }  /* the summary above replaces them */
@media (max-width:380px) { .sa-cos-up-card { flex-wrap:wrap; } .sa-cos-up-t { flex-basis:calc(100% - 60px); } .sa-cos-up-p { margin-left:58px; flex-direction:row; gap:8px; align-items:baseline; } body.order-page .sa-cos-up .sa-cos-up-add { margin-left:auto !important; } }

/* ---------- Checkout view ---------- */
body.sa-co-view .site-header,
body.sa-co-view .quiz-shell > .progress,
body.sa-co-view .quiz-nav,
body.sa-co-view .sa-unified-step > .eyebrow,
body.sa-co-view .sa-unified-step > h2,
body.sa-co-view .sa-unified-step > .checkout-intro,
body.sa-co-view #saPersonalPreview,
body.sa-co-view .sa-co-open,
body.sa-co-view .checkout-reactions,
body.sa-co-view .sa-checkout-bottom,
body.sa-co-view #backToSong,
body.sa-co-view .embedded-checkout-topbar { display:none !important; }
body.sa-co-view:not(.sa-co-contact) #saOrderChoices > .sa-panel-title,
body.sa-co-view:not(.sa-co-contact) #saOrderChoices > .sa-panel-caption,
body.sa-co-view:not(.sa-co-contact) #saOrderChoices > label.field { display:none !important; }
body.sa-co-view #saOrderChoices { padding-top:4px; }
body.sa-co-view .sa-unified-step { animation:sa-co-in .35s ease-out both; }

body.sa-co-view .sa-co-bar { display:block; margin:-14px 0 18px; }
body.sa-co-view #saOrderChoices { border:0 !important; background:none !important; box-shadow:none !important; padding-left:0 !important; padding-right:0 !important; }
.sa-co-bar-row { position:sticky; top:0; z-index:20; display:flex; justify-content:space-between; align-items:center; gap:8px; padding:10px 0 12px;
  border-bottom:1px solid #eee3db; background:rgba(255,253,251,.94); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); }
body.order-page .sa-co-bar .sa-co-back { justify-self:start; display:inline-flex !important; align-items:center; gap:6px; width:auto !important; min-width:0 !important; min-height:40px;
  margin:0 !important; padding:8px 14px 8px 10px !important; border:1px solid #e7ddd3 !important; border-radius:999px !important; background:#fff !important;
  color:#3a2e28 !important; font-family:inherit !important; font-weight:700 !important; font-size:14.5px !important; line-height:1 !important; box-shadow:none !important; cursor:pointer; }
.sa-co-back span:first-child { font-size:17px; line-height:1; }
.sa-co-logo { display:inline-flex; align-items:center; gap:6px; text-decoration:none; }
.sa-co-logo img:first-child { width:26px; height:auto; }
.sa-co-logo img:last-child { height:20px; width:auto; }
.sa-co-secure { display:inline-flex; align-items:center; gap:6px; font-size:13px; font-weight:700; color:#2f6b45; letter-spacing:.2px; }

.sa-co-crumbs { display:flex; justify-content:center; align-items:center; gap:0; margin:14px 0 14px; padding:0; list-style:none; font-size:13px; font-weight:600; color:#a39890; }
.sa-co-crumbs li { display:flex; align-items:center; }
.sa-co-crumbs li + li::before { content:""; width:22px; height:1px; margin:0 8px; background:#ddd0c6; }
.sa-co-crumbs li.is-on { color:#26211d; font-weight:800; }
.sa-co-crumbs li.is-done { color:#2f6b45; }
body.order-page .sa-co-crumbs button { all:unset; cursor:pointer; color:inherit; font:inherit; }
.sa-co-crumbs li.is-done button::before { content:"✓ "; }

.sa-co-for { display:flex; align-items:center; gap:12px; padding:12px 14px; border:1px solid #efe1d8; border-radius:16px; background:linear-gradient(135deg,#fff6f1,#fffdfb); }
.sa-co-for-ic { flex:none; display:grid; place-items:center; width:42px; height:42px; border-radius:12px; background:linear-gradient(160deg,#5a3540,#2b1f24); color:#ffe2c9; font-size:20px; }
.sa-co-for-t { flex:1; min-width:0; display:flex; flex-direction:column; }
.sa-co-for-n { font:600 17px/1.25 'Playfair Display',Georgia,serif; color:#26211d; overflow-wrap:anywhere; }
.sa-co-for-s { font-size:12.5px; color:#8a7a72; margin-top:2px; }
body.order-page .sa-co-bar .sa-co-for-edit { all:unset; flex:none; cursor:pointer; font-size:13px; font-weight:700; color:#b95854; text-decoration:underline; text-underline-offset:3px; }
.sa-co-for-edit[hidden] { display:none !important; }

/* ---------- Pricing v3 cards ---------- */
.sa-pk3 .sa-pk-title { margin-top:2px; }
.sa-pk3 .sa-pk-sub { margin-bottom:16px; }
.sa-pk-step { display:flex; align-items:center; gap:9px; margin:20px 0 12px; font-size:13px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; color:#6b5d55; }
.sa-pk-step b { display:grid; place-items:center; width:22px; height:22px; border-radius:50%; background:#26211d; color:#fff; font-size:12px; letter-spacing:0; }
.sa-pk3 .sa-pk-popular { margin-top:22px; }
.sa-pk3 .sa-pk { margin-bottom:12px; }
.sa-pk3 .sa-pk-card { padding:18px 16px 14px; }
.sa-pk3 .sa-pk-eta { display:flex; align-items:flex-start; gap:8px; margin:12px 0 0 36px; padding:8px 11px; border-radius:10px; background:#f6f1ec; font-size:13.5px; color:#5a4e46; line-height:1.35; }
.sa-pk3 .sa-pk-on .sa-pk-eta { background:#e5f3ea; color:#245c3c; }
.sa-pk3 .sa-pk-eta strong { font-weight:800; }
.sa-pk3 .sa-pk-eta i { font-style:normal; flex:none; }
.sa-pk3 .sa-pk-badge { background:linear-gradient(90deg,#2e8b57,#3aa36a); box-shadow:0 6px 14px rgba(46,139,87,.25); }

.sa-add { display:block; margin:0 0 10px; cursor:pointer; }
.sa-add input { position:absolute; opacity:0; pointer-events:none; }
.sa-add-card { display:flex; align-items:center; gap:12px; padding:13px 14px; border:1.5px solid #e7ddd3; border-radius:16px; background:#fff; transition:border-color .15s, background .15s, box-shadow .15s; }
.sa-add-on .sa-add-card { border-color:#2e8b57; background:#f6fbf7; box-shadow:0 8px 20px rgba(31,110,67,.10); }
.sa-add input:focus-visible + .sa-add-card { outline:3px solid rgba(46,139,87,.35); outline-offset:2px; }
.sa-add-check { flex:none; width:24px; height:24px; border-radius:7px; border:2px solid #cbbfb6; background:#fff; display:grid; place-items:center; transition:all .15s; }
.sa-add-on .sa-add-check { border-color:#2e8b57; background:#2e8b57; }
.sa-add-on .sa-add-check::after { content:""; width:6px; height:11px; border:solid #fff; border-width:0 2.5px 2.5px 0; transform:translate(0,-1px) rotate(45deg); }
.sa-add-art { flex:none; display:grid; place-items:center; width:44px; height:44px; border-radius:12px; background:#fbf3ee; overflow:hidden; }
.sa-add-art img { width:44px; height:44px; display:block; }
.sa-add-art-photo { width:56px; height:56px; border-radius:10px; box-shadow:0 4px 10px rgba(60,30,25,.15); }
.sa-add-art-photo img { width:56px; height:56px; object-fit:cover; }
body.order-page .sa-add-ex { display:inline-block; margin-top:4px; font-size:12.5px; font-weight:700; color:#b95854; text-decoration:underline; text-underline-offset:2px; }
.sa-zoom { position:fixed; inset:0; z-index:9999; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px; padding:20px;
  background:rgba(30,22,18,.82); -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px); animation:sa-co-in .25s ease-out both; cursor:zoom-out; }
.sa-zoom img { max-width:min(560px,100%); max-height:78vh; border-radius:14px; box-shadow:0 24px 60px rgba(0,0,0,.45); }
.sa-zoom p { margin:0; color:#fff; font-size:14px; font-weight:600; text-align:center; }
.sa-add-art-verse { background:linear-gradient(160deg,#f3b9a6,#c9705f); color:#fff; font-size:22px; font-weight:700; }
.sa-add-name { flex:1; min-width:0; font-weight:800; font-size:16px; line-height:1.25; color:#26211d; }
.sa-add-name small { display:block; margin-top:2px; font-weight:500; font-size:13px; line-height:1.35; color:#8a7a72; }
.sa-add-price { flex:none; display:flex; flex-direction:column; align-items:flex-end; line-height:1.15; }
.sa-add-price s { font-size:13px; color:#a39890; }
.sa-add-price b { font-size:17px; font-weight:800; color:#26211d; }
.sa-add-on .sa-add-price b { color:#1f6e43; }

.sa-pk-total { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:16px 0 0; padding:16px 18px; border-radius:18px;
  background:#26211d; color:#fff; box-shadow:0 14px 30px rgba(38,33,29,.18); }
.sa-pk-total-l { display:flex; flex-direction:column; font:600 19px/1.2 'Playfair Display',Georgia,serif; }
.sa-pk-total-l small { margin-top:5px; font:800 11.5px/1 'DM Sans',system-ui,sans-serif; letter-spacing:.4px; color:#9fe0b6; text-transform:uppercase; }
.sa-pk-total-r { display:flex; align-items:baseline; gap:9px; }
.sa-pk-total-r s { font-size:15px; color:rgba(255,255,255,.55); }
.sa-pk-total-r b { font-size:30px; font-weight:800; letter-spacing:-.6px; }
.sa-pk3 .sa-pk-ready { margin:12px 0 0; }

/* Payment column: flat (no card around cards), with its "3 Pay securely" label. */
.sa-co-paystep { display:none; }
body.sa-co-view .sa-co-paystep { display:flex; margin-top:4px; }
body.sa-co-view #embeddedCheckoutSection { border:0 !important; background:none !important; box-shadow:none !important; padding-left:0 !important; padding-right:0 !important; padding-top:0 !important; }
body.sa-co-view #saOrderChoices { padding-bottom:0 !important; }
body.sa-co-view.sa-onepage .sa-unified-layout { gap:6px; }
body.sa-co-view .sa-paybar { display:none !important; }  /* the dark total card above already shows it */

@media (max-width:380px) {
  .sa-co-logo img:last-child { height:17px; }
  .sa-co-secure { font-size:11.5px; }
  .sa-add-name { font-size:15px; }
  .sa-pk-total-r b { font-size:26px; }
}
@media (prefers-reduced-motion:reduce) {
  body.sa-co-view .sa-unified-step, body.sa-v-song .sa-unified-step, #saOrderChoices .sa-co-open .sa-co-open-btn { animation:none !important; }
}

/* Direct Hosted only; the Elements layout and PayPal remain unchanged. */
body.sa-hosted-direct #saPackages .sa-add-verse { display:block !important; }
body.sa-hosted-direct #paypalCheckoutBlock,
body.sa-hosted-direct #saExpressTitle { display:none !important; }
body.sa-hosted-direct #embeddedCheckoutSection { display:none !important; }
#saDirectError { color:#a02d2d; margin:12px 0; font-size:15px; }
#saOrderChoices .sa-co-open .sa-co-open-btn:disabled { opacity:.7; cursor:wait; animation:none; }

.sa-song-trust,.sa-song-next {display:none;}
body.sa-v-song .sa-song-trust,body.sa-v-song .sa-song-next {display:block;}
.sa-song-trust {margin:24px 0;padding:22px;border:1px solid #d2e5d6;border-radius:20px;background:#f4faf5;text-align:center;}
.sa-song-trust h3,.sa-song-next h3 {font-family:Georgia,serif;font-size:27px;margin:8px 0 12px;color:#2f2722;}
.sa-trust-k {color:#256d46;font-weight:750;font-size:13px;letter-spacing:.06em;}
.sa-song-trust p {line-height:1.5;}
.sa-trust-points {display:grid;gap:8px;color:#256d46;font-size:14px;font-weight:650;}
.sa-song-next {margin:24px 0;padding:22px;border:1px solid #e8ddd4;border-radius:20px;background:#fffaf6;}
.sa-song-next li {margin:12px 0;line-height:1.5;}
.sa-song-next p {font-size:13px;color:#7a6b63;}
.sa-char-count {display:block;text-align:right;font-size:12px;color:#86776f;margin:6px 0;}
.sa-char-count.near-limit {color:#b2504c;font-weight:700;}

.sa-preview-versions {margin:16px 0;padding:16px;border-radius:16px;background:#faf6f1;font-size:14px;line-height:1.5;}
.sa-preview-versions button {border:1px solid #d8b5ac;border-radius:999px;background:white;color:#a64f49;padding:10px 14px;margin:4px;font:inherit;cursor:pointer;}

.sa-song-faq {display:none;margin:28px 0;padding:20px;border:1px solid #e8ddd4;border-radius:20px;}
body.sa-hosted-direct.sa-v-song .sa-song-faq {display:block;}
.sa-song-faq summary {cursor:pointer;font-weight:700;padding:14px 0;}
.sa-song-faq details {border-bottom:1px solid #eee3db;}
.sa-song-faq p {line-height:1.6;color:#776b62;}

/* Retake is a secondary utility, not a promotional offer. */
.sa-preview-versions {margin:0 0 12px;padding:0;background:none;text-align:right;}
.sa-preview-versions .sa-try-version {font-size:13px;padding:7px 12px;background:#fffaf6;border-color:#e6dbd2;color:#75665e;}
.sa-version-list {text-align:left;margin:8px 0;}
.sa-trust-review blockquote {margin:10px 0;font:600 19px/1.5 Georgia,serif;color:#302823;}
.sa-trust-stars {color:#cf943b;letter-spacing:3px;font-size:21px;margin:0;}
.sa-trust-credit {font-size:13px;color:#7a6b63;margin:10px 0 18px;}
.sa-trust-points {padding-top:16px;border-top:1px solid #d2e5d6;}

.sa-trust-social {display:flex;align-items:center;justify-content:center;gap:20px;text-align:left;margin-bottom:18px;}
.sa-trust-social strong {font-size:16px;color:#5d544e;line-height:1.4;}
.sa-trust-social .sa-trust-stars {margin:0 0 3px;letter-spacing:1px;}
.sa-trust-faces .avatars {display:flex;align-items:center;justify-content:center;margin:0;}
.sa-trust-faces .avatars span {flex:none;width:36px;height:36px;border:2px solid #fbf8f3;border-radius:50%;overflow:hidden;margin-left:-9px;}
.sa-trust-faces .avatars span:first-child {margin-left:0;}
.sa-trust-faces .avatars img {width:100%;height:100%;object-fit:cover;}
@media(max-width:600px){.sa-trust-social {flex-direction:column;gap:10px;text-align:center;}.sa-trust-faces .avatars span {width:39px;height:39px;}}

/* Edit song is the single route for changing story and contact details. */
body.sa-hosted-direct.sa-v-song .sa-who {display:none !important;}
.sa-preview-versions {display:flex;flex-direction:column;align-items:flex-end;margin:0 0 12px;}
.sa-preview-versions[hidden] {display:none;}
.sa-preview-versions .sa-try-version {margin:0;font-weight:650;}
.sa-preview-versions .sa-version-list {align-self:stretch;}



/* Compact benefits use existing product terms. */
body.sa-hosted-direct.sa-v-song #saWarm {display:none !important;}
.sa-song-included {display:none;margin:24px 0;padding:24px;border:1px solid #e8ddd4;border-radius:20px;background:#fffaf6;}
body.sa-hosted-direct.sa-v-song .sa-song-included {display:block;}
.sa-song-included h3 {margin:0 0 20px;font:600 27px Georgia,serif;color:#302823;text-align:center;}
.sa-included-grid {display:grid;grid-template-columns:1fr 1fr;gap:22px 18px;}
.sa-included-grid div {display:flex;gap:10px;align-items:flex-start;}
.sa-included-grid i {font-style:normal;color:#b2504c;font-size:22px;line-height:1.2;}
.sa-included-grid strong {display:block;font-size:15px;color:#302823;margin-bottom:4px;}
.sa-included-grid small {font-size:13px;line-height:1.5;color:#7a6b63;display:block;}
@media(max-width:380px){.sa-song-included{padding:18px;}.sa-included-grid{gap:18px 12px;}.sa-included-grid strong{font-size:14px;}}

/* Avatar proof stays compact; guarantee sits below Unlock. */
.sa-song-trust {padding:12px 0;border:0;background:none;border-radius:0;}
.sa-trust-social {margin-bottom:0;}
.sa-song-next {padding:0;border:0;background:none;}
.sa-song-next .sa-guarantee {display:flex;align-items:center;gap:14px;padding:20px 22px;border:1px solid #bfdcc9;border-radius:18px;background:#eaf4ee;color:#255f3d;}
.sa-song-next .sa-guarantee svg {flex:none;width:36px;height:40px;color:#2a7b4b;}
.sa-song-next .sa-guarantee p {margin:0;font-size:15px;line-height:1.5;color:#3b5b46;}
.sa-song-next .sa-guarantee strong {display:block;font-size:17px;line-height:1.4;color:#245a39;}

/* Hosted: omit the dark summary card; calculations and Stripe total stay intact. */
body.sa-hosted-direct.sa-v-song .sa-pk-total {display:none !important;}

#saPersonalPreview .sa-preview-versions .sa-try-version {width:auto;min-height:0;align-self:flex-end;box-shadow:none;padding:7px 12px;border-radius:999px;}
#saPersonalPreview .sa-version-list button {width:auto;min-height:0;padding:7px 12px;font-size:12px;box-shadow:none;}

/* Mobile: remove outer and inner preview frames */
@media (max-width: 800px) {
  body.order-page.sa-v-song #saOrderChoices,
  body.order-page.sa-v-song #saPersonalPreview {
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0 !important;
  }

  body.order-page.sa-v-song #saPersonalPreview {
    margin-top: 0 !important;
  }
}
/* 2026-11-04: bottom Unlock button (same look as the main one, no pulse). */
.sa-co-open-bottom { margin:6px 0 18px; }
.sa-co-open-bottom .sa-co-open-btn { display:flex !important; align-items:center; justify-content:center; gap:10px; width:100% !important; min-height:64px; margin:0 !important;
  padding:16px 22px !important; border:0 !important; border-radius:999px !important; cursor:pointer;
  background:linear-gradient(180deg,#2e8b57,#1f6e43) !important; color:#fff !important; font-family:inherit !important; font-weight:800 !important; font-size:19px !important; line-height:1.15 !important;
  box-shadow:0 14px 30px rgba(31,110,67,.30), inset 0 1px 0 rgba(255,255,255,.18) !important; -webkit-tap-highlight-color:transparent; animation:none !important; }

/* 2026-11-04: thin white lock on the Unlock buttons (no emoji, no arrow). */
.sa-co-open-ic { display:inline-flex; align-items:center; }
.sa-co-open-ic .sa-lock { display:block; width:20px; height:20px; }

/* 2026-11-04: pay buttons are soft rectangles (16px corners), not pills. */
#saOrderChoices .sa-co-open .sa-co-open-btn, .sa-co-open-bottom .sa-co-open-btn { border-radius:16px !important; }

/* 2026-11-08 (v5.17): button sub-line, Express "only $40 more", Early Black Friday card + free lyrics. */
.sa-co-open-tw{display:inline-flex;flex-direction:column;align-items:center;line-height:1.15}
.sa-co-open-sub{display:block;font-size:12.5px;font-weight:500;opacity:.9;letter-spacing:.01em;margin-top:3px}
.sa-pk-more{display:block;font-style:normal;color:#2f7a4d;font-weight:700;font-size:13px;margin-top:4px}
.sa-bf-card{display:flex;gap:11px;align-items:center;margin:2px 0 16px;border:1.5px solid #e9d6c4;background:#fffaf4;border-radius:14px;padding:12px 14px;text-align:left}
.sa-bf-card[hidden]{display:none}
.sa-bf-ic{flex:none;width:38px;height:38px;border-radius:50%;background:#1f1a17;display:grid;place-items:center;font-size:17px}
.sa-bf-card b{display:block;font-size:15px;color:#2b211c;margin-bottom:1px}.sa-bf-card span{font-size:13.5px;color:#6d5d53;line-height:1.35}
.sa-add-price .sa-bf-free{color:#2f7a4d}
.sa-bf-incl{display:block;font-style:normal;color:#2f7a4d;font-weight:700;font-size:12.5px;margin-top:3px}
