/******** App LP CTA (shared) ********/
.app-lp-cta{
  margin:56px 0 40px;
  background:#fff;
  border:1px solid #e9e9ee;
  border-radius:var(--radius-m, 8px);
  box-shadow:var(--shadow-s, 0 1px 0 rgba(0,0,0,.03));
}
.app-lp-cta__inner{
  max-width:var(--wrap-max, 800px);
  margin:0 auto;
  padding:28px 22px 24px;
}

.app-lp-cta__title{
  font-size:20px; line-height:1.6; font-weight:800; letter-spacing:.02em;
  margin:0 0 8px;
}
.app-lp-cta__thanks{ margin:0 0 10px; color:#666; font-size:14px; }
.app-lp-cta__lead{ margin:10px 0 4px; font-size:16px; }
.app-lp-cta__desc{ margin:0 0 18px; color:#333; font-size:15px; }

.app-lp-cta__image-link{
  display:block; text-decoration:none; border-radius:12px; overflow:hidden;
  border:1px solid #e6e6ee; box-shadow:0 6px 18px rgba(0,0,0,.08);
  transition:transform .15s ease;
}
.app-lp-cta__image-link:hover{ transform:translateY(-2px); }
.app-lp-cta__image{ width:100%; height:auto; display:block; }

.app-lp-cta__note{ margin:14px 0 0; font-size:14px; color:#555; }
.app-lp-cta__tagline{ margin:4px 0 14px; text-align:center; font-size:14px; color:#333; }

.app-lp-cta__action{ display:flex; justify-content:center; margin-top:6px; }
.app-lp-cta__button{
  display:inline-flex; align-items:center; gap:10px;
  padding:12px 24px; border-radius:999px;
  background:linear-gradient(180deg, #ffc86a 0%, var(--accent, #e0b354) 100%);
  color:#fff; font-weight:800; font-size:16px; text-decoration:none;
  box-shadow:0 8px 18px rgba(0,0,0,.12);
  transition:transform .05s ease, box-shadow .2s ease, opacity .2s ease;
}
.app-lp-cta__button:hover{ transform:translateY(-1px); opacity:.95; }
.app-lp-cta__button:focus-visible{
  outline:2px solid #0000; box-shadow:0 0 0 3px rgba(224,179,84,.45);
}
.app-lp-cta__button .fa{ font-size:18px; line-height:1; }

/* SP */
@media (max-width:768px){
  .app-lp-cta{ margin:40px 0 32px; }
  .app-lp-cta__inner{ padding:20px 14px; }
  .app-lp-cta__title{ font-size:18px; }
  .app-lp-cta__lead{ font-size:15px; }
  .app-lp-cta__desc{ font-size:14px; }
  .app-lp-cta__button{ width:100%; justify-content:center; padding:12px 16px; font-size:15px; }
}
