/* AffiliConnex Phase 27 — public-site refinements.
   Kept separate from the logged-in product UI and the legacy marketing bundle. */
.public-site-v27 .hero26 { padding-top: 62px; padding-bottom: 38px; }
.public-site-v27 .hero26-grid { gap: 54px; grid-template-columns: minmax(0,1.04fr) minmax(410px,.82fr); }
.public-site-v27 .hero26 h1 { max-width: 720px; font-size: clamp(44px,5.25vw,68px); line-height: .98; letter-spacing: -.062em; }
.public-site-v27 .hero26 .lead { max-width: 660px; font-size: 19px; }
.public-site-v27 .mock-browser26 { border-radius: 22px; padding: 22px; transform: none; box-shadow: 0 18px 55px rgba(12,35,70,.10); }
.public-site-v27 .proof26-grid div,
.public-site-v27 .cards26 article,
.public-site-v27 .price-card26,
.public-site-v27 .integration-card26,
.public-site-v27 .form-card26,
.public-site-v27 .setup-aside26,
.public-site-v27 .legal-doc26,
.public-site-v27 .faq26,
.public-site-v27 .compare26,
.public-site-v27 .code-card26 { box-shadow: 0 8px 26px rgba(12,35,70,.045); }
.public-site-v27 .section26 { padding-top: 58px; padding-bottom: 58px; }
.public-site-v27 .section26 h2 { letter-spacing: -.04em; }
.public-site-v27 .feature-strip26,
.public-site-v27 .cta26 { border-radius: 20px; }
.public-site-v27 .v26-header .site-header-inner { max-width: 1240px; }
.public-site-v27 .v26-header .site-nav a,
.public-site-v27 .v26-header .nav-login { font-weight: 720; }
@media (max-width: 980px) {
  .public-site-v27 .hero26-grid { grid-template-columns: 1fr; }
  .public-site-v27 .product-shot26 { max-width: 650px; }
}
@media (max-width: 640px) {
  .public-site-v27 .hero26 { padding-top: 38px; }
  .public-site-v27 .hero26 h1 { font-size: 42px; }
}

/* Phase 27.2 — compact affiliate application */
.affiliate-apply-section { padding-top: 46px !important; padding-bottom: 64px !important; }
.affiliate-apply-container { max-width: 760px; }
.affiliate-apply-card {
  background: #fff;
  border: 1px solid #dce7f4;
  border-radius: 20px;
  padding: 30px;
  box-shadow: 0 8px 26px rgba(12,35,70,.045);
}
.affiliate-apply-card-head { margin-bottom: 22px; padding-bottom: 17px; border-bottom: 1px solid #e8eef6; }
.affiliate-apply-label { display: block; margin-bottom: 5px; color: #64748b; font-size: 11px; font-weight: 850; letter-spacing: .09em; text-transform: uppercase; }
.affiliate-apply-card h1 { margin: 0; color: #071427; font-size: 30px; line-height: 1.08; letter-spacing: -.04em; }
.affiliate-apply-form { display: grid; gap: 15px; }
.affiliate-apply-form label { display: grid; gap: 6px; color: #14213a; font-size: 13px; font-weight: 800; }
.affiliate-apply-form label small { color: #718096; font-size: 11px; font-weight: 600; }
.affiliate-apply-form input,.affiliate-apply-form textarea {
  width: 100%;
  border: 1px solid #cfdced;
  border-radius: 10px;
  padding: 12px 13px;
  background: #fff;
  color: #0d172a;
  font: inherit;
  box-shadow: none;
  outline: none;
}
.affiliate-apply-form input:focus,.affiliate-apply-form textarea:focus { border-color: #8bb2ef; box-shadow: 0 0 0 3px rgba(21,94,239,.10); }
.affiliate-apply-form textarea { min-height: 130px; resize: vertical; }
.affiliate-apply-actions { display: flex; justify-content: flex-start; padding-top: 2px; }
.public-site-v27 .affiliate-submit-button {
  min-width: 170px;
  border: 1px solid #155eef !important;
  border-radius: 10px !important;
  background: #155eef !important;
  color: #fff !important;
  box-shadow: none !important;
  transform: none !important;
}
.public-site-v27 .affiliate-submit-button:hover { background: #0f4fd1 !important; border-color: #0f4fd1 !important; box-shadow: none !important; transform: none !important; }
.affiliate-apply-success { text-align: left; }
.affiliate-apply-success h1 { margin-top: 12px; }
.affiliate-apply-success p { color: #5f6f86; }
.affiliate-reference { font-size: 12px; }
@media (max-width: 640px) {
  .affiliate-apply-section { padding-top: 26px !important; }
  .affiliate-apply-card { padding: 22px; border-radius: 16px; }
  .affiliate-apply-card .grid2 { grid-template-columns: 1fr; }
  .affiliate-apply-actions,.affiliate-submit-button { width: 100%; }
}
