
.subscribe-page { max-width: 1050px; padding: clamp(42px, 6vw, 78px) 0 88px; }
.subscribe-heading { max-width: 790px; margin: 0 auto 34px; text-align: center; }
.subscribe-eyebrow { display: inline-flex; align-items: center; gap: 9px; color: #c5a8ff; font-size: 11px; font-weight: 800; letter-spacing: .17em; text-transform: uppercase; }
.subscribe-eyebrow span { width: 7px; height: 7px; border-radius: 50%; background: #b85bff; box-shadow: 0 0 14px rgba(184,91,255,.65); }
.subscribe-heading h1 { margin: 17px 0 15px; color: #f5f1ff; font-size: clamp(40px, 6vw, 66px); line-height: 1.04; letter-spacing: -.05em; }
.subscribe-heading > p { max-width: 720px; margin: 0 auto; color: #bdb8ce; font-size: clamp(16px, 2vw, 19px); line-height: 1.7; }
.subscribe-heading strong,.subscribe-main strong,.subscribe-existing strong { color: #f0eaff; }
.subscribe-main { display: grid; grid-template-columns: minmax(0,1.08fr) minmax(320px,.92fr); overflow: hidden; border: 1px solid rgba(185,153,255,.25); border-radius: 19px; background: radial-gradient(ellipse at 0 0, rgba(123,60,229,.18), transparent 48%), linear-gradient(145deg,#191c31,#111522 75%); box-shadow: 0 24px 65px rgba(0,0,0,.24); }
.subscribe-main-copy { padding: clamp(26px,4vw,44px); }
.subscribe-mark { display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; border: 1px solid rgba(188,145,255,.32); border-radius: 13px; background: rgba(138,75,230,.16); color: #d6a5ff; font-size: 20px; font-weight: 850; letter-spacing: -.08em; }
.subscribe-kicker { margin: 24px 0 10px; color: #c7a7ff; font-size: 11px; font-weight: 800; letter-spacing: .16em; }
.subscribe-main-copy h2 { max-width: 520px; margin: 0 0 15px; color: #f4f0ff; font-size: clamp(29px,3.3vw,42px); line-height: 1.08; letter-spacing: -.04em; }
.subscribe-main-copy > p:not(.subscribe-kicker):not(.subscribe-cta-note) { max-width: 540px; margin: 0 0 25px; color: #bdb8ce; font-size: 16px; line-height: 1.7; }
.subscribe-primary-cta { min-height: 48px; padding: 12px 19px; border-radius: 9px; font-size: 14px; box-shadow: 0 9px 28px rgba(135,52,232,.25); }
.subscribe-cta-note { margin: 11px 0 0; color: #8f8ba2; font-size: 12px; }
.subscribe-howto { padding: clamp(26px,4vw,42px); border-left: 1px solid rgba(185,153,255,.18); background: rgba(7,10,20,.18); }
.subscribe-howto h3 { margin: 2px 0 24px; color: #f2edff; font-size: 21px; letter-spacing: -.025em; }
.subscribe-howto ol { display: grid; gap: 22px; margin: 0; padding: 0; list-style: none; }
.subscribe-howto li { display: grid; grid-template-columns: 34px minmax(0,1fr); gap: 13px; align-items: start; }
.subscribe-howto li > span { display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 50%; border: 1px solid rgba(193,153,255,.3); background: rgba(148,86,235,.16); color: #d6a7ff; font-size: 13px; font-weight: 800; }
.subscribe-howto li strong { display: block; margin: 1px 0 5px; color: #eee9fc; font-size: 14px; }
.subscribe-howto li p { margin: 0; color: #a9a5ba; font-size: 13px; line-height: 1.55; }
.subscribe-existing { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 20px; padding: 23px 27px; border: 1px solid #30364b; border-radius: 15px; background: #141827; }
.subscribe-existing h2 { margin: 0 0 6px; color: #f0edfa; font-size: 19px; }
.subscribe-existing p { margin: 0; color: #a9a5ba; font-size: 13px; line-height: 1.55; }
.subscribe-existing .button { flex: none; min-height: 42px; }
.subscribe-bottom-links { display: flex; justify-content: center; gap: 25px; margin-top: 28px; flex-wrap: wrap; }
.subscribe-bottom-links a { color: #c69aff; font-size: 13px; font-weight: 700; text-decoration: none; }
.subscribe-bottom-links a:hover { color: #f0e5ff; }
@media (max-width: 760px) {
  .subscribe-page { padding-top: 38px; }
  .subscribe-heading { text-align: left; margin-bottom: 25px; }
  .subscribe-main { grid-template-columns: 1fr; }
  .subscribe-howto { border-left: 0; border-top: 1px solid rgba(185,153,255,.18); }
  .subscribe-existing { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 480px) {
  .subscribe-page { padding-bottom: 58px; }
  .subscribe-heading h1 { font-size: 39px; }
  .subscribe-main-copy,.subscribe-howto { padding: 24px 21px; }
  .subscribe-existing { padding: 20px; }
  .subscribe-bottom-links { justify-content: flex-start; flex-direction: column; gap: 13px; }
  .subscribe-existing .button { width: 100%; white-space: normal; text-align: center; }
}
