/* Reusable Hidden Destiny Code order box */
:is(#step-upsell,body) .ob { --ob-gold:#D6B16C; --ob-bright:#F2CD82; --ob-edge:#8B713C; --ob-ink:#F8F1E7; --ob-muted:#B8AEC9;
  position:relative; z-index:1; box-sizing:border-box; width:100%; max-width:560px; margin:0 auto; padding:38px 34px 30px;
  text-align:center; color:var(--ob-ink); font-family:'Inter',system-ui,sans-serif;
  background:radial-gradient(ellipse at 50% 0,#d6b16c1c,transparent 62%),radial-gradient(ellipse at 50% 100%,#6c4ab626,transparent 60%),#151128;
  border:1px solid var(--ob-edge); border-radius:22px; box-shadow:0 0 0 1px #d6b16c14 inset,0 24px 60px -24px #000,0 0 50px -20px #d6b16c40; }
:is(#step-upsell,body) .ob * { box-sizing:border-box; }
:is(#step-upsell,body) .ob-loading, :is(#step-upsell,body) .ob-headline, :is(#step-upsell,body) .ob-regular, :is(#step-upsell,body) .ob-label, :is(#step-upsell,body) .ob-save, :is(#step-upsell,body) .ob-terms, :is(#step-upsell,body) .ob-secure, :is(#step-upsell,body) .ob-countdown > p { margin:0; max-width:none; line-height:1.5; font-size:inherit; color:inherit; }
:is(#step-upsell,body) .ob-loading { color:var(--ob-muted); font-size:14px; padding:40px 0; }
:is(#step-upsell,body) .ob-eyebrow { display:block; color:var(--ob-gold); font-size:11px; letter-spacing:.24em; font-weight:500; text-transform:uppercase; }
:is(#step-upsell,body) .ob-title { margin:10px 0 0; color:var(--ob-ink); font:600 30px/1.15 'Cormorant Garamond',Georgia,serif; }
:is(#step-upsell,body) .ob-rule { height:1px; margin:22px auto; background:linear-gradient(90deg,transparent,var(--ob-edge),transparent); }
:is(#step-upsell,body) .ob-headline { color:var(--ob-ink); font:600 23px/1.3 'Cormorant Garamond',Georgia,serif; margin-top:10px !important; }
:is(#step-upsell,body) .ob-headline + .ob-title { margin-top:6px; }
:is(#step-upsell,body) .ob-regular { color:var(--ob-gold); font-size:11px; font-weight:500; letter-spacing:.18em; text-transform:uppercase; }
:is(#step-upsell,body) .ob-regular span { display:block; }
:is(#step-upsell,body) .ob-regular s { display:inline-block; margin-top:4px; font:500 32px/1.2 'Cormorant Garamond',Georgia,serif; letter-spacing:0; text-decoration-line:line-through; text-decoration-thickness:2px; text-decoration-color:var(--ob-muted); }
:is(#step-upsell,body) .ob-label { margin-top:16px !important; color:var(--ob-gold); font-size:11px; font-weight:600; letter-spacing:.24em; text-transform:uppercase; }
:is(#step-upsell,body) .ob-price { margin:2px 0 4px; font:700 104px/1 'Cormorant Garamond',Georgia,serif;
  background:linear-gradient(180deg,#FFF1C9 0%,#F2CD82 45%,#C79B4E 100%); -webkit-background-clip:text; background-clip:text; color:var(--ob-bright);
  -webkit-text-fill-color:transparent; filter:drop-shadow(0 0 18px #f2cd8259); }
:is(#step-upsell,body) .ob-save { display:inline-block; margin-top:6px !important; padding:7px 16px; border-radius:999px; border:1px solid #f2cd8266; background:#f2cd8214; color:var(--ob-bright); font-size:13px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; }
:is(#step-upsell,body) .ob-terms { margin-top:12px !important; color:var(--ob-muted); font-size:13px; letter-spacing:.04em; }
:is(#step-upsell,body) .ob-avail { display:flex; align-items:center; justify-content:center; gap:10px; margin:24px 0 0; padding:13px 16px; border:1px solid #d6b16c80; border-radius:12px; background:#231B3A; color:var(--ob-ink); font-size:14.5px; font-weight:500; line-height:1.45; }
:is(#step-upsell,body) .ob-avail strong { color:var(--ob-bright); font-size:17px; }
:is(#step-upsell,body) .ob-avail-icon { flex:none; color:var(--ob-gold); font-size:16px; text-shadow:0 0 10px #f2cd82cc; }
:is(#step-upsell,body) .ob-avail.is-changed { animation:ob-glow 1.6s ease-out; }
@keyframes ob-glow { 0% { box-shadow:0 0 0 0 #f2cd8200; } 25% { box-shadow:0 0 26px 2px #f2cd8277; border-color:var(--ob-bright); } 100% { box-shadow:0 0 0 0 #f2cd8200; } }
:is(#step-upsell,body) .ob-countdown { margin-top:18px; }
:is(#step-upsell,body) .ob-countdown > p { color:var(--ob-ink); font-size:11.5px; font-weight:600; letter-spacing:.2em; text-transform:uppercase; }
:is(#step-upsell,body) .ob-clock { display:flex; align-items:center; justify-content:center; gap:8px; margin-top:10px; }
:is(#step-upsell,body) .ob-clock > div { min-width:72px; padding:10px 6px 8px; border-radius:10px; background:#2B2047; border:1px solid #d6b16c33; }
:is(#step-upsell,body) .ob-clock b { display:block; color:var(--ob-bright); font:700 32px/1 'Inter',sans-serif; font-variant-numeric:tabular-nums; }
:is(#step-upsell,body) .ob-clock small { display:block; margin-top:5px; color:var(--ob-muted); font-size:9px; letter-spacing:.18em; text-transform:uppercase; }
:is(#step-upsell,body) .ob-colon { color:var(--ob-gold); font-size:26px; font-weight:700; padding-bottom:14px; }
:is(#step-upsell,body) .ob-cta { display:flex; align-items:center; justify-content:center; gap:10px; width:100%; min-height:68px; margin-top:22px; padding:18px 22px;
  border-radius:12px; border:1px solid #f8dc9a; color:#101329; text-decoration:none; text-transform:uppercase; font-size:16px; font-weight:800; letter-spacing:.04em; line-height:1.35;
  background:linear-gradient(125deg,#B8914C 0%,#F5D58A 38%,#FFF0C4 52%,#E9C377 66%,#BF9852 100%); background-size:200% 100%; background-position:0 0;
  box-shadow:0 0 22px -4px #f2cd8280,0 10px 24px -12px #000; transition:transform .25s ease,box-shadow .25s ease,background-position .6s ease; }
:is(#step-upsell,body) .ob-cta:hover { transform:translateY(-2px); background-position:100% 0; box-shadow:0 0 34px 0 #f2cd82a6,0 14px 28px -12px #000; color:#101329; }
:is(#step-upsell,body) .ob-cta:focus-visible { outline:3px solid var(--ob-bright); outline-offset:3px; }
:is(#step-upsell,body) .ob-cta.is-disabled { cursor:not-allowed; filter:grayscale(.7); opacity:.65; box-shadow:none; }
:is(#step-upsell,body) .ob-secure { display:flex; align-items:center; justify-content:center; gap:7px; margin-top:16px !important; color:var(--ob-ink); font-size:13.5px; }
:is(#step-upsell,body) .ob-lock { width:14px; height:14px; fill:none; stroke:var(--ob-gold); stroke-width:2.2; stroke-linecap:round; }
:is(#step-upsell,body) .ob-pay { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:8px; margin:12px 0 0; padding:0; list-style:none; }
:is(#step-upsell,body) .ob-pay li { display:block; width:46px; height:29px; }
:is(#step-upsell,body) .ob-pay svg { display:block; width:100%; height:100%; border-radius:4px; box-shadow:0 0 0 1px #ffffff1f; }
:is(#step-upsell,body) .ob-sr { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
:is(#step-upsell,body) .ob-guarantee { display:flex; align-items:center; justify-content:center; gap:12px; text-align:left; }
:is(#step-upsell,body) .ob-seal { flex:none; width:42px; height:42px; fill:var(--ob-gold); filter:drop-shadow(0 0 8px #d6b16c66); }
:is(#step-upsell,body) .ob-guarantee strong { display:block; color:var(--ob-ink); font-size:14.5px; }
:is(#step-upsell,body) .ob-guarantee span { display:block; color:var(--ob-muted); font-size:12.5px; line-height:1.5; }
:is(#step-upsell,body) .ob-guarantee a { color:var(--ob-gold); }
/* Product mockup at the top of the box; transparent PNG/WebP, so no frame is drawn around it. */
:is(#step-upsell,body) .ob-media { position:relative; width:min(var(--ob-art,300px),100%); margin:-12px auto 14px; padding:0; }
:is(#step-upsell,body) .ob-media::before { content:''; position:absolute; inset:6% 4% 0; border-radius:50%; background:radial-gradient(ellipse at 50% 55%,#f2cd8238,#d6b16c14 45%,transparent 70%); filter:blur(14px); pointer-events:none; }
:is(#step-upsell,body) .ob-media img { position:relative; display:block; width:100%; height:auto; aspect-ratio:3/2; filter:drop-shadow(0 14px 20px #000000a6); }
:is(#step-upsell,body) .ob--large { --ob-art:430px; }
:is(#step-upsell,body) .ob--medium { --ob-art:300px; }
:is(#step-upsell,body) .ob--small { --ob-art:170px; }
:is(#step-upsell,body) .ob--small .ob-media { margin-bottom:8px; }
@media (prefers-reduced-motion:no-preference) {
  :is(#step-upsell,body) .ob-media img { transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1); }
  #step-upsell .bp-offer:not(.bp-seen) .ob-media img { opacity:0; transform:translateY(16px); }
}
@media (max-width:600px) {
  :is(#step-upsell,body) .ob--large { --ob-art:300px; }
  :is(#step-upsell,body) .ob--medium { --ob-art:240px; }
  :is(#step-upsell,body) .ob-media { margin-top:-8px; }
  :is(#step-upsell,body) .ob { padding:30px 18px 24px; border-radius:18px; }
  .ob-title { font-size:26px; }
  .ob-headline { font-size:21px; }
  .ob-price { font-size:88px; }
  .ob-save { font-size:12px; padding:7px 12px; }
  .ob-avail { font-size:13.5px; padding:12px; }
  .ob-clock > div { min-width:62px; }
  .ob-clock b { font-size:27px; }
  .ob-cta { font-size:14px; min-height:64px; padding:16px 14px; }
}
@media (prefers-reduced-motion:reduce) { :is(#step-upsell,body) .ob-cta, :is(#step-upsell,body) .ob-avail { transition:none; animation:none !important; } }
