:root{--bf-gold:#edca78;--bf-gold-line:rgba(237,202,120,.28);--bf-gold-fill:rgba(237,202,120,.08);--bf-violet:#ad79ff;--bf-card:#1a1a1a;--bf-card-featured:#1a1a1a}
body{margin:0;background:#111;color:#fff}
/* One canvas behind navigation and hero avoids a section-background seam. */
body.bf-deal-page{background:linear-gradient(180deg,#161616 0,#000 72rem) #000!important}
.bf-deal-page #pricing{background:transparent}
#pricing{padding-top:54px;padding-bottom:64px;scroll-margin-top:88px}
#pricing .clipbook-scroll-reveal{opacity:1!important;transform:none!important}
#pricing .pricing-paid-header{position:relative;isolation:isolate;width:100%;min-width:0;margin-bottom:32px}
#pricing .bf-campaign-tag{display:block;width:260px;max-width:75%;margin:0 auto 20px;padding:0;border:0;background:none;box-shadow:none}
#pricing .bf-campaign-tag img{display:block;width:100%;height:auto;animation:bf-badge-glint 6s ease-in-out infinite}
@keyframes bf-badge-glint{0%,35%,75%,100%{filter:brightness(1)}55%{filter:brightness(1.07)}}
#pricing .bf-header-art{position:absolute;z-index:-1;display:block;object-fit:contain;pointer-events:none;user-select:none;filter:drop-shadow(0 14px 18px #0005)}
#pricing .bf-header-art--gift{width:136px;height:170px;left:-151px;top:52px;transform:rotate(-9deg);--bf-art-angle:-9deg;--bf-drift-x:5px;--bf-drift-y:-8px;animation:bf-art-float 8s ease-in-out -2s infinite}
#pricing .bf-header-art--tag{width:120px;height:150px;right:-145px;top:63px;transform:rotate(11deg);--bf-art-angle:11deg;--bf-drift-x:-6px;--bf-drift-y:7px;animation:bf-art-float 10s ease-in-out -5s infinite}
#pricing .pricing-paid-title{margin-bottom:0}
#pricing .bf-title-highlight{color:var(--bf-gold)}
#pricing .bf-offer-subtitle{margin:16px 0 0;color:#c5c5cc;font-size:16px;line-height:1.5}
#pricing .price-badge{display:inline-flex;align-items:center;flex-shrink:0;padding:8px 13px;white-space:nowrap;border:1px solid var(--bf-gold-line)!important;background:var(--bf-gold-fill)!important;color:var(--bf-gold)!important;box-shadow:none!important}
#pricing .bf-device-primary{font-weight:800}
#pricing .bf-previous-offer{display:flex;flex-direction:column;align-items:flex-start;gap:0;min-height:0;margin:26px 0 0;color:#c1c1c7;line-height:1.3}
#pricing .bf-previous-offer del{font-size:clamp(1.05rem,1.45vw,1.35rem);line-height:1;font-weight:850;color:#aaa2b3;text-decoration-line:line-through;text-decoration-thickness:1.5px;text-decoration-color:#aaa2b3;font-variant-numeric:tabular-nums;white-space:nowrap}
#pricing .pricing-price-row{margin-top:22px!important}
#pricing button.pricing-cta{width:100%;border:0;font-family:inherit;cursor:default}
#pricing .bf-countdown{position:relative;box-sizing:border-box;margin:24px auto 0;width:348px;max-width:100%;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
#pricing .bf-countdown-caption{margin:0 0 10px;color:#f9f4e9;font-size:16px;font-weight:700;letter-spacing:-.015em;line-height:1.35}
#pricing .bf-countdown-values{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:start;gap:8px}
#pricing .bf-countdown-values>div{position:relative;display:flex;flex-direction:column;align-items:center;min-width:0;gap:5px;padding:6px 3px;border:0;border-radius:6px;background:#25231f;box-shadow:none}
#pricing .bf-countdown-values strong{color:var(--bf-gold);font-size:30px;line-height:1;font-weight:750;letter-spacing:-.035em;font-variant-numeric:tabular-nums;text-shadow:none}
#pricing .bf-countdown-values>div>span{font-size:11px;line-height:1.4;color:#d5c39e;font-weight:600;letter-spacing:.07em;text-transform:uppercase}
#pricing .bf-countdown-colon{color:#c29b56;font-size:20px;line-height:1;font-weight:500;padding-top:10px}
#pricing .bf-countdown-deadline{margin:10px 0 0;color:#c4bfb4;font-size:13px;line-height:1.5}
#pricing .bf-countdown[data-expired=true] .bf-countdown-caption{color:var(--bf-gold)}
#pricing .bf-countdown-values[hidden]{display:none}
.bf-preview-note{padding:20px;text-align:center;border-top:1px solid #ffffff0d;color:#898990;font:12px/1.5 system-ui,sans-serif}
a:focus-visible{outline:2px solid var(--bf-gold);outline-offset:5px}
@media(max-width:1199px) and (min-width:1024px){#pricing .bf-header-art--gift{width:130px;height:163px;left:-126px;top:108px}#pricing .bf-header-art--tag{width:115px;height:145px;right:-118px;top:112px}}
@media(max-width:1023px){#pricing .bf-header-art--gift{position:static;width:112px;height:140px;margin:0 auto 18px;transform:rotate(-6deg);--bf-art-angle:-6deg}#pricing .bf-header-art--tag{display:none}}
@media(prefers-reduced-motion:reduce){#pricing .bf-campaign-tag img{animation:none;filter:none}}
@media(max-width:767px){
  #pricing{padding-top:34px;padding-bottom:44px}
  #pricing .pricing-paid-header{margin-bottom:28px}
  #pricing .bf-campaign-tag{width:220px;margin-bottom:18px}
  #pricing .bf-offer-subtitle{margin-top:14px;font-size:14px}
  #pricing .bf-countdown{margin-top:22px;padding:0;border-radius:0}
  #pricing .bf-countdown-caption{font-size:15px;margin-bottom:13px}
  #pricing .bf-countdown-values{gap:5px}
  #pricing .bf-countdown-values>div{padding:10px 3px 9px;border-radius:7px;gap:7px}
  #pricing .bf-countdown-values strong{font-size:clamp(24px,7.4vw,30px)}
  #pricing .bf-countdown-values>div>span{font-size:10px;letter-spacing:.02em}
  #pricing .bf-countdown-colon{font-size:16px;padding-top:15px}
  #pricing .bf-countdown-deadline{font-size:12px;margin-top:10px}
}

/* Reuse the original card surfaces, typography and CTA finishes. */
#pricing .pricing-feature-primary{color:var(--bf-violet)}
#pricing .bf-current-devices{margin:0 0 28px;font-size:clamp(.92rem,1.05vw,1rem);line-height:1.3;font-weight:800}
#pricing .pricing-price-row{margin-bottom:20px!important}
#pricing .pricing-feature-list{gap:14px;margin-bottom:2.2rem}
#pricing .pricing-card{background:var(--bf-card);border-color:rgba(255,255,255,.10);box-shadow:0 28px 80px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.04)!important}
#pricing .pricing-card.featured{background:var(--bf-card-featured);border-color:rgba(143,92,255,.62)!important;box-shadow:0 32px 90px rgba(0,0,0,.38),0 0 0 1px rgba(143,92,255,.18),inset 0 1px 0 rgba(255,255,255,.04)!important}
/* A fixed path keeps the reference checkmark shape independent of font fallback. */
#pricing .pricing-feature-check{color:#d6d6d6}
#pricing .pricing-feature-check svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2}
#pricing .pricing-cta{background:linear-gradient(180deg,#ffc35a,#f5a928)!important;border:0!important;color:#080808!important;box-shadow:none!important}
#pricing .featured .pricing-cta{background:linear-gradient(90deg,#8f5cff,#b985ff)!important;color:#fff!important;box-shadow:0 16px 36px rgba(143,92,255,.22)!important}
#pricing .featured .pricing-price{color:#f5c659!important}
@media(min-width:1024px){#pricing .pricing-paid-title{font-size:52px;line-height:1.08}#pricing .pricing-card{padding:32px 36px 22px}}
@media(max-width:767px){#pricing .bf-current-devices{font-size:.95rem!important}}

/* Keep common comparison rows aligned and differentiating benefits distinct. */
#pricing .pricing-feature-list li{font-weight:800}
#pricing .pricing-feature-list .pricing-feature-primary{font-weight:800}
@media(min-width:1024px){#pricing .bf-countdown-values>div>span{font-size:12px;letter-spacing:.025em}}

/* Match the original 1200px pricing grid rather than intrinsic text widths. */
#pricing .pricing-grid{width:100%;max-width:1200px;box-sizing:border-box}
@media(max-width:1023px){#pricing .pricing-grid{max-width:560px}}

/* Digits zoom only when updated; JavaScript respects reduced motion. */
#pricing .bf-countdown-values>.bf-seconds{background:#30241b}
#pricing .bf-countdown-values [data-unit="seconds"]{color:#ffbf80;transform-origin:center}
#pricing .bf-countdown-values [data-unit="minutes"]{transform-origin:center}

@keyframes bf-art-float{0%,100%{transform:translate3d(0,0,0) rotate(var(--bf-art-angle))}50%{transform:translate3d(var(--bf-drift-x),var(--bf-drift-y),0) rotate(calc(var(--bf-art-angle) + 2deg))}}
@media(prefers-reduced-motion:reduce){#pricing .bf-header-art{animation:none}}

/* Featured-plan badge sits across the border without shifting comparison rows. */
#pricing .pricing-card{position:relative}
#pricing .bf-popular-tag,#pricing .bf-saving-tag{position:absolute;z-index:1;top:0;left:50%;display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:5px 13px;border:1px solid #8f5cff70;border-radius:999px;background:#211b2c;color:#f5f1ff;font-size:13px;font-weight:700;line-height:20px;white-space:nowrap;box-shadow:0 4px 12px #0004;transform:translate(-50%,-50%);pointer-events:none}
@media(max-width:1023px){#pricing .pricing-grid{row-gap:36px!important}}

#pricing .bf-saving-tag{min-height:38px;padding:5px 13px;border-color:#edca7852;background:#2b2419;color:var(--bf-gold)}
#pricing .bf-saving-tag svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}

.bf-skip-link{position:fixed;top:10px;left:10px;z-index:100;padding:12px 16px;border-radius:8px;background:#edca78;color:#111;font-weight:700;transform:translateY(-150%)}
.bf-skip-link:focus{transform:none}
.bf-deal-page .clipbook-scroll-reveal{opacity:1!important;transform:none!important}
.bf-deal-page a:focus-visible,.bf-deal-page summary:focus-visible,.bf-deal-page label[for="nav-toggle"]:focus-visible{outline:2px solid #edca78;outline-offset:5px}
#pricing .pricing-cta[aria-disabled="true"]{opacity:.55;pointer-events:none;cursor:default}
.bf-ended-message{margin:22px auto 0;color:#edca78;font-size:16px;line-height:1.5}.bf-ended-message[hidden]{display:none}.bf-ended-message a{text-decoration:underline}
#pricing .bf-purchase-note{order:4;margin:10px auto 0;color:#a9a9b3;text-align:center;font-size:13px;line-height:1.6}
.bf-how{padding:68px 0;border-top:1px solid #ffffff14}.bf-section-heading{max-width:640px;margin:0 auto 30px;text-align:center}.bf-eyebrow{margin:0 0 12px;color:#edca78;font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.bf-section-heading h2{margin:0 0 12px;color:#fff;font-size:clamp(27px,3vw,36px);line-height:1.15;font-weight:800}.bf-section-heading>p:last-child{color:#b7b7c0;font-size:15px;line-height:1.6}.bf-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:1200px;margin:0 auto;padding:0;list-style:none}.bf-steps li{padding:24px;border:1px solid #ffffff14;border-radius:14px;background:#191919}.bf-step-number{display:grid;place-items:center;width:32px;height:32px;margin-bottom:18px;border:1px solid #8f5cff55;border-radius:9px;background:#8f5cff1a;color:#cdb4ff;font-weight:750}.bf-steps h3{margin:0 0 10px;color:#fff;font-size:19px;font-weight:750;line-height:1.25}.bf-steps p{margin:0;color:#b8b8c1;font-size:14px;line-height:1.65}.bf-steps a,.bf-faq-help a,.faq-row p a{color:#c4a5ff;text-decoration:underline;text-underline-offset:3px}.bf-faq-help{margin-top:20px;color:#b8b8c1;font-size:15px}.bf-deal-page #faq{padding-top:64px;padding-bottom:64px}.bf-deal-page footer{border-top:1px solid #ffffff14}.bf-deal-page footer a:hover{color:#fff}
@media(max-width:767px){.bf-how{padding:44px 0}.bf-steps{grid-template-columns:1fr;gap:14px}.bf-steps li{padding:22px}.bf-step-number{margin-bottom:14px}.bf-deal-page #faq{padding-top:44px;padding-bottom:44px}}

/* Let long plan names and savings badges wrap cleanly on the narrowest phones. */
#pricing .pricing-card{min-width:0}
#pricing .pricing-card>.flex{flex-wrap:wrap;row-gap:8px}

/* Existing customer-review wall, tuned to the campaign's section hierarchy. */
.bf-deal-page .wall-of-love-section{border-top:1px solid #ffffff14;padding:64px 0}
.bf-deal-page .wall-of-love-eyebrow{color:var(--bf-gold);font-family:Inter,sans-serif;letter-spacing:.09em;font-size:12px}
.bf-deal-page .wall-of-love-heading h2{font-size:clamp(28px,3.2vw,42px);line-height:1.12;letter-spacing:-.025em;font-weight:800}
.bf-reviews-fallback{text-align:center;color:#b8b8c1}.bf-reviews-fallback a{color:#c4a5ff;text-decoration:underline;text-underline-offset:3px}
@media(max-width:767px){.bf-deal-page .wall-of-love-section{padding:44px 0}}
