/* Registration sales page: native WordPress blocks, Cineprompt's cinema palette. */
.cp-body.cp-page-registration .header-row > .language-switch {
  display: inline-flex;
  margin-left: auto;
}

.cp-body.cp-page-registration .cp-sales-main {
  padding-top: 144px;
  padding-bottom: 100px;
  background: radial-gradient(ellipse at 88% 8%, #25201c 0, transparent 33%), var(--cp-bg);
}

.cp-body.cp-page-registration .cp-sales-content {
  width: 100%;
  margin: 0;
}

/* WP's legacy group wrapper is layout-only; expose native block children to grids. */
.cp-body.cp-page-registration .cp-sales-content .wp-block-group__inner-container {
  display: contents;
}

.cp-body.cp-page-registration .cp-sales-section.site-shell {
  max-width: 1308px;
  padding-inline: 64px;
  margin-block: 0;
}

.cp-body.cp-page-registration .cp-sales-section + .cp-sales-section {
  margin-top: 112px;
}

.cp-body.cp-page-registration .cp-sales-content :is(.wp-block-group, .wp-block-columns, .wp-block-column) {
  min-width: 0;
}

.cp-body.cp-page-registration .cp-sales-content :is(h1, h2, h3, p, figure, ol) {
  margin-top: 0;
}

.cp-body.cp-page-registration .cp-sales-content h2 {
  max-width: 900px;
  margin-bottom: 24px;
  font-family: "CineDisplay", Impact, sans-serif;
  font-size: clamp(38px, 4.1vw, 58px);
  font-weight: 400;
  line-height: 1.12;
  letter-spacing: -.02em;
  text-wrap: balance;
}

.cp-body.cp-page-registration .cp-sales-content h3 {
  margin-bottom: 12px;
  color: var(--cp-text);
  font-family: "CineSans", Arial, sans-serif;
  font-size: 22px;
  font-weight: 650;
  line-height: 1.3;
  letter-spacing: -.02em;
}

.cp-body.cp-page-registration .cp-sales-content p {
  max-width: 720px;
  margin-bottom: 20px;
  color: var(--cp-muted);
  font-size: 18px;
  line-height: 1.65;
}

.cp-body.cp-page-registration .cp-sales-content :is(p, figure):last-child {
  margin-bottom: 0;
}

.cp-body.cp-page-registration .cp-sales-content .cp-sales-kicker {
  margin-bottom: 22px;
  color: #f17864;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.cp-body.cp-page-registration .cp-sales-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.17fr) minmax(0, .83fr);
  align-items: center;
  gap: 72px;
}

.cp-body.cp-page-registration .cp-sales-content .cp-sales-title {
  max-width: 750px;
  margin-bottom: 28px;
  color: var(--cp-text);
  font-family: "CineDisplay", Impact, sans-serif;
  font-size: clamp(54px, 5.8vw, 84px);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -.025em;
  text-wrap: balance;
}

.cp-body.cp-page-registration .cp-sales-content .cp-sales-lead {
  max-width: 620px;
  margin-bottom: 30px;
  color: #ddd9d0;
  font-size: 22px;
  line-height: 1.5;
}

.cp-body.cp-page-registration .cp-sales-hero-art {
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
}

.cp-body.cp-page-registration .cp-sales-hero-image {
  width: 100%;
  margin: 0;
}

.cp-body.cp-page-registration .cp-sales-hero-image img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  object-position: 62% center;
  border: 1px solid #49413a;
  box-shadow: 0 32px 64px #0005;
}

.cp-body.cp-page-registration .cp-sales-hero-image figcaption {
  margin-top: 14px;
  color: #b6b4ad;
  font-size: 11px;
  line-height: 1.6;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.cp-body.cp-page-registration .cp-sales-content .cp-sales-note {
  margin-top: 22px;
  color: #b6b4ad;
  font-size: 14px;
  line-height: 1.65;
}

.cp-body.cp-page-registration .cp-sales-content .cp-sales-tags {
  margin-top: 26px;
  padding-top: 20px;
  border-top: 1px solid #393c38;
  color: #c9c6bd;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.9;
  letter-spacing: .035em;
}

.cp-body.cp-page-registration .cp-sales-purchase {
  max-width: 540px;
  margin-top: 28px;
}

.cp-body.cp-page-registration .cp-sales-purchase .registration-price {
  margin: 0 0 8px;
  color: var(--cp-text);
  font-size: clamp(40px, 4.2vw, 56px);
  font-weight: 650;
  line-height: 1.1;
  letter-spacing: -.045em;
}

.cp-body.cp-page-registration .cp-sales-purchase .offer-note {
  margin: 0 0 22px;
  font-size: 15px;
  line-height: 1.65;
}

.cp-body.cp-page-registration .cp-sales-purchase .button {
  width: 100%;
  min-height: 62px;
  gap: 18px;
  padding: 18px 24px;
  font-size: 18px;
  line-height: 1.35;
}

.cp-body.cp-page-registration .cp-sales-purchase .cp-demo-note {
  margin-top: 14px;
  padding-left: 12px;
  border-left: 2px solid #b47a5b;
  color: #d2c9bd;
  font-size: 13px;
  line-height: 1.6;
}

.cp-body.cp-page-registration .cp-sales-problem {
  padding-block: 48px;
  border-block: 1px solid #393c38;
}

.cp-body.cp-page-registration .cp-sales-problem p {
  max-width: 820px;
  font-size: 21px;
}

.cp-body.cp-page-registration .cp-sales-method {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 30px;
  margin-top: 44px;
}

.cp-body.cp-page-registration .cp-sales-method > :is(h2, p.cp-sales-kicker) {
  grid-column: 1 / -1;
}

.cp-body.cp-page-registration .cp-sales-step {
  padding-top: 26px;
  border-top: 1px solid #55564f;
}

.cp-body.cp-page-registration .cp-sales-content .cp-sales-number {
  margin-bottom: 22px;
  color: #f17864;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: .1em;
}

.cp-body.cp-page-registration :is(.cp-sales-step, .cp-sales-benefit) p:not(.cp-sales-number) {
  font-size: 16px;
}

.cp-body.cp-page-registration .cp-sales-proof-grid {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  align-items: center;
  gap: 64px;
}

.cp-body.cp-page-registration .cp-sales-proof-copy a:not(.button) {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  color: var(--cp-text);
  font-size: 15px;
  text-decoration-color: #d97662;
}

.cp-body.cp-page-registration .cp-sales-proof-media .case-image {
  margin: 0;
}

.cp-body.cp-page-registration .cp-sales-proof-media .film-frame {
  border: 1px solid #464940;
}

.cp-body.cp-page-registration .cp-sales-proof-media figcaption {
  margin-top: 14px;
  color: #b6b4ad;
  font-size: 11px;
  line-height: 1.6;
  letter-spacing: .04em;
}

.cp-body.cp-page-registration .cp-sales-posters {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  margin-top: 36px;
}

.cp-body.cp-page-registration .cp-sales-posters figure {
  display: grid;
  grid-template-columns: 78px minmax(0, 1fr);
  align-items: center;
  gap: 16px;
  margin: 0;
  padding-top: 20px;
  border-top: 1px solid #393c38;
}

.cp-body.cp-page-registration .cp-sales-posters img {
  display: block;
  width: 78px;
  height: 140px;
  max-height: 140px;
  object-fit: cover;
}

.cp-body.cp-page-registration .cp-sales-posters figcaption {
  margin: 0;
  color: #c9c6bd;
  font-size: 12px;
  line-height: 1.6;
}

.cp-body.cp-page-registration .cp-sales-included-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 42px 38px;
  margin-top: 42px;
}

.cp-body.cp-page-registration .cp-sales-benefit {
  padding-top: 24px;
  border-top: 1px solid #55564f;
}

.cp-body.cp-page-registration .cp-sales-fit {
  padding-block: 48px;
  border-block: 1px solid #393c38;
}

.cp-body.cp-page-registration .cp-sales-fit-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 60px;
}

.cp-body.cp-page-registration .cp-sales-fit-grid > :last-child {
  padding-left: 48px;
  border-left: 1px solid #393c38;
}

.cp-body.cp-page-registration .cp-sales-offer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, .9fr);
  align-items: center;
  gap: 80px;
}

.cp-body.cp-page-registration .cp-sales-offer-card {
  padding: 38px;
  border: 1px solid #766757;
  background: linear-gradient(145deg, #26231f, #191c1d 75%);
}

.cp-body.cp-page-registration .cp-sales-offer-card h3 {
  font-size: 25px;
}

.cp-body.cp-page-registration .cp-sales-offer-card .cp-sales-purchase {
  margin-top: 24px;
}

.cp-body.cp-page-registration .cp-sales-faq-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 40px 64px;
  margin-top: 40px;
}

.cp-body.cp-page-registration .cp-sales-faq {
  padding-top: 24px;
  border-top: 1px solid #55564f;
}

.cp-body.cp-page-registration .cp-sales-faq p {
  font-size: 16px;
}

.cp-body.cp-page-registration .cp-sales-process-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 38px;
  margin: 38px 0 0;
  padding: 0;
  list-style: none;
  counter-reset: cp-process;
}

.cp-body.cp-page-registration .cp-sales-process-list > li {
  position: relative;
  padding: 24px 0 0;
  border-top: 1px solid #55564f;
  color: var(--cp-muted);
  font-size: 16px;
  line-height: 1.65;
  counter-increment: cp-process;
}

.cp-body.cp-page-registration .cp-sales-process-list > li::before {
  display: block;
  margin-bottom: 18px;
  color: #f17864;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .1em;
  content: "0" counter(cp-process);
}

.cp-body.cp-page-registration .cp-sales-process-list :is(strong, h3) {
  color: var(--cp-text);
}

.cp-body.cp-page-registration .cp-sales-last {
  padding-block: 64px;
  border-top: 1px solid #55564f;
  text-align: center;
}

.cp-body.cp-page-registration .cp-sales-last :is(h2, p, .cp-sales-purchase) {
  margin-inline: auto;
}

.cp-body.cp-page-registration .cp-sales-last h2 {
  max-width: 760px;
}

.cp-body.cp-page-registration .cp-sales-last .cp-demo-note {
  width: fit-content;
  text-align: left;
}

@media (max-width: 1100px) {
  .cp-body.cp-page-registration .cp-sales-section.site-shell { padding-inline: 40px; }
  .cp-body.cp-page-registration .cp-sales-hero-grid { gap: 40px; }
  .cp-body.cp-page-registration .cp-sales-hero-image img { aspect-ratio: 3 / 5; }
  .cp-body.cp-page-registration :is(.cp-sales-proof-grid, .cp-sales-offer) { gap: 40px; }
  .cp-body.cp-page-registration .cp-sales-method { gap: 22px; }
  .cp-body.cp-page-registration .cp-sales-posters { gap: 16px; }
  .cp-body.cp-page-registration .cp-sales-posters figure { grid-template-columns: 66px minmax(0, 1fr); gap: 12px; }
  .cp-body.cp-page-registration .cp-sales-posters img { width: 66px; height: 118px; }
}

@media (max-width: 900px) {
  .cp-body.cp-page-registration .cp-sales-main { padding-top: 130px; padding-bottom: 64px; }
  .cp-body.cp-page-registration .cp-sales-section + .cp-sales-section { margin-top: 80px; }
  .cp-body.cp-page-registration .cp-sales-hero-grid { grid-template-columns: minmax(0, 1fr); gap: 38px; }
  .cp-body.cp-page-registration .cp-sales-content .cp-sales-title { max-width: 740px; font-size: clamp(56px, 8.4vw, 72px); }
  .cp-body.cp-page-registration .cp-sales-hero-art { width: 100%; }
  .cp-body.cp-page-registration .cp-sales-hero-image img { aspect-ratio: 16 / 8; object-position: 62% 64%; }
  .cp-body.cp-page-registration .cp-sales-method { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; }
  .cp-body.cp-page-registration .cp-sales-proof-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .cp-body.cp-page-registration .cp-sales-included-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; }
  .cp-body.cp-page-registration .cp-sales-offer { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .cp-body.cp-page-registration .cp-sales-offer-card { max-width: 620px; }
  .cp-body.cp-page-registration .cp-sales-fit-grid { gap: 32px; }
  .cp-body.cp-page-registration .cp-sales-fit-grid > :last-child { padding-left: 30px; }
  .cp-body.cp-page-registration .cp-sales-faq-grid { gap: 32px; }
  .cp-body.cp-page-registration .cp-sales-process-list { gap: 26px; }
}

@media (max-width: 767px) {
  .cp-body.cp-page-registration .header-row > .header-cta { display: none; }
  .cp-body.cp-page-registration .header-row > .language-switch { display: inline-flex; }
}

@media (max-width: 600px) {
  .cp-body.cp-page-registration .cp-sales-main { padding-top: 120px; padding-bottom: 36px; }
  .cp-body.cp-page-registration .cp-sales-section.site-shell { padding-inline: 24px; }
  .cp-body.cp-page-registration .cp-sales-section + .cp-sales-section { margin-top: 64px; }
  .cp-body.cp-page-registration .cp-sales-content .cp-sales-kicker { margin-bottom: 18px; font-size: 11px; letter-spacing: .13em; }
  .cp-body.cp-page-registration .cp-sales-content .cp-sales-title { margin-bottom: 24px; font-size: clamp(43px, 11.8vw, 64px); line-height: 1.08; }
  .cp-body.cp-page-registration .cp-sales-content .cp-sales-lead { margin-bottom: 26px; font-size: 19px; }
  .cp-body.cp-page-registration .cp-sales-content h2 { font-size: clamp(34px, 9.3vw, 46px); line-height: 1.15; }
  .cp-body.cp-page-registration .cp-sales-content h3 { font-size: 21px; }
  .cp-body.cp-page-registration .cp-sales-content p { font-size: 17px; }
  .cp-body.cp-page-registration .cp-sales-content .cp-sales-note { font-size: 13px; }
  .cp-body.cp-page-registration .cp-sales-content .cp-sales-tags { font-size: 11px; }
  .cp-body.cp-page-registration .cp-sales-hero-image img { aspect-ratio: 4 / 3; object-position: 64% 70%; }
  .cp-body.cp-page-registration .cp-sales-hero-image figcaption { font-size: 10px; }
  .cp-body.cp-page-registration .cp-sales-purchase { max-width: none; }
  .cp-body.cp-page-registration .cp-sales-purchase .registration-price { font-size: 44px; }
  .cp-body.cp-page-registration .cp-sales-purchase .offer-note { font-size: 14px; }
  .cp-body.cp-page-registration .cp-sales-purchase .button { min-height: 58px; padding: 16px 18px; font-size: 16px; gap: 14px; }
  .cp-body.cp-page-registration .cp-sales-purchase .cp-demo-note { font-size: 12px; }
  .cp-body.cp-page-registration .cp-sales-problem { padding-block: 32px; }
  .cp-body.cp-page-registration .cp-sales-problem p { font-size: 19px; }
  .cp-body.cp-page-registration .cp-sales-method { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .cp-body.cp-page-registration .cp-sales-step { padding-top: 20px; }
  .cp-body.cp-page-registration .cp-sales-content .cp-sales-number { margin-bottom: 14px; font-size: 12px; }
  .cp-body.cp-page-registration :is(.cp-sales-step, .cp-sales-benefit, .cp-sales-faq) p:not(.cp-sales-number) { font-size: 16px; }
  .cp-body.cp-page-registration .cp-sales-posters { gap: 12px; margin-top: 28px; }
  .cp-body.cp-page-registration .cp-sales-posters figure { display: block; padding-top: 16px; }
  .cp-body.cp-page-registration .cp-sales-posters img { width: 100%; height: auto; max-height: 140px; aspect-ratio: 9 / 16; object-fit: cover; }
  .cp-body.cp-page-registration .cp-sales-posters figcaption { margin-top: 10px; font-size: 10px; }
  .cp-body.cp-page-registration .cp-sales-included-grid { grid-template-columns: minmax(0, 1fr); gap: 28px; margin-top: 30px; }
  .cp-body.cp-page-registration .cp-sales-fit { padding-block: 32px; }
  .cp-body.cp-page-registration .cp-sales-fit-grid { grid-template-columns: minmax(0, 1fr); gap: 30px; }
  .cp-body.cp-page-registration .cp-sales-fit-grid > :last-child { padding: 26px 0 0; border-left: 0; border-top: 1px solid #393c38; }
  .cp-body.cp-page-registration .cp-sales-offer-card { padding: 26px 22px; }
  .cp-body.cp-page-registration .cp-sales-offer-card h3 { font-size: 23px; }
  .cp-body.cp-page-registration .cp-sales-faq-grid { grid-template-columns: minmax(0, 1fr); gap: 28px; margin-top: 30px; }
  .cp-body.cp-page-registration .cp-sales-process-list { grid-template-columns: minmax(0, 1fr); gap: 24px; margin-top: 30px; }
  .cp-body.cp-page-registration .cp-sales-last { padding-block: 42px; }
}

@media (max-width: 359px) {
  .cp-body.cp-page-registration .cp-sales-section.site-shell { padding-inline: 20px; }
  .cp-body.cp-page-registration .cp-sales-content .cp-sales-title { font-size: 41px; }
  .cp-body.cp-page-registration .cp-sales-offer-card { padding: 24px 18px; }
  .cp-body.cp-page-registration .cp-sales-purchase .button { padding-inline: 14px; font-size: 15px; }
}
