.lifegen-aff, .lifegen-aff * { box-sizing: border-box; }
.lifegen-aff { width: 100%; color: #020b24; background: #fff; font-family: Inter, Arial, sans-serif; }
.lifegen-aff__wrap { width: min(1200px, calc(100% - 48px)); margin: 0 auto; }
.lifegen-aff__eyebrow { display: block; margin-bottom: 14px; color: #b88c16; font-size: 12px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; }
.lifegen-aff h1, .lifegen-aff h2 { margin: 0; font-family: "Cormorant Garamond", Georgia, serif; font-weight: 600; line-height: 1.05; }
.lifegen-aff h1 { font-size: clamp(48px, 6vw, 76px); color: #fff; }
.lifegen-aff h2 { font-size: clamp(36px, 5vw, 54px); }
.lifegen-aff__rule { width: 72px; height: 2px; margin: 24px 0; background: #d4af37; }
.lifegen-aff p { color: #5d6678; line-height: 1.85; font-size: 16px; }
.lifegen-aff a { color: #020b24; font-weight: 700; }
.lifegen-aff-hero { padding: 110px 0 90px; background: radial-gradient(circle at 18% 40%, rgba(212,175,55,.14), transparent 42%), #020b24; text-align: center; }
.lifegen-aff-hero p { max-width: 720px; margin: 0 auto; color: #c7cfda; font-size: 18px; }
.lifegen-aff-hero .lifegen-aff__rule { margin: 28px auto; }
.lifegen-aff-stats { padding: 0; background: #020b24; }
.lifegen-aff-stats__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; padding: 0 0 90px; }
.lifegen-aff-stat { padding: 36px 28px; background: rgba(255,255,255,.04); border: 1px solid rgba(212,175,55,.28); border-radius: 16px; text-align: center; }
.lifegen-aff-stat strong { display: block; color: #d4af37; font-family: "Cormorant Garamond", Georgia, serif; font-size: 48px; font-weight: 600; }
.lifegen-aff-stat span { display: block; margin-top: 8px; color: #c7cfda; font-size: 14px; letter-spacing: .08em; text-transform: uppercase; font-weight: 700; }
.lifegen-aff-how { padding: 100px 0; }
.lifegen-aff-how__header { max-width: 720px; margin: 0 auto 48px; text-align: center; }
.lifegen-aff-how__header .lifegen-aff__rule { margin-left: auto; margin-right: auto; }
.lifegen-aff-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.lifegen-aff-step { padding: 32px 26px; border: 1px solid rgba(2,11,36,.08); border-radius: 12px; background: #fff; box-shadow: 0 15px 35px rgba(2,11,36,.04); }
.lifegen-aff-step em { display: block; margin-bottom: 18px; color: #d4af37; font-family: "Cormorant Garamond", Georgia, serif; font-size: 36px; font-style: normal; font-weight: 600; }
.lifegen-aff-step h3 { margin: 0 0 10px; font-size: 15px; letter-spacing: 1px; text-transform: uppercase; }
.lifegen-aff-who { padding: 100px 0; background: #f6f7f9; }
.lifegen-aff-who__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
.lifegen-aff-card { padding: 40px; background: #fff; border-radius: 14px; border: 1px solid rgba(2,11,36,.08); }
.lifegen-aff-card h3 { margin: 0 0 16px; font-family: "Cormorant Garamond", Georgia, serif; font-size: 32px; }
.lifegen-aff-card ul { margin: 0; padding-left: 18px; color: #5d6678; line-height: 1.8; }
.lifegen-aff-card--no { border-color: rgba(184,140,22,.35); }
.lifegen-aff-ruo { padding: 90px 0; background: #020b24; color: #fff; text-align: center; }
.lifegen-aff-ruo h2 { color: #fff; }
.lifegen-aff-ruo p { max-width: 780px; margin: 24px auto 0; color: #c7cfda; }
.lifegen-aff-ruo .lifegen-aff__rule { margin: 24px auto; }
.lifegen-aff-apply { padding: 100px 0; }
.lifegen-aff-apply__header { max-width: 720px; margin: 0 auto 40px; text-align: center; }
.lifegen-aff-apply__header .lifegen-aff__rule { margin-left: auto; margin-right: auto; }
.lifegen-aff-apply__box { max-width: 720px; margin: 0 auto; padding: 40px; border: 1px solid rgba(212,175,55,.34); border-radius: 14px; background: #fff; }
.lifegen-aff-apply__box p.note { font-size: 13px; }
@media (max-width: 900px) {
  .lifegen-aff-stats__grid, .lifegen-aff-steps, .lifegen-aff-who__grid { grid-template-columns: 1fr; }
  .lifegen-aff-hero, .lifegen-aff-how, .lifegen-aff-who, .lifegen-aff-ruo, .lifegen-aff-apply { padding: 70px 0; }
}.lifegen-terms, .lifegen-terms * { box-sizing: border-box; }
.lifegen-terms { background: #020b24; padding: 100px 20px; color: #fff; font-family: Inter, Arial, sans-serif; }
.lifegen-terms__inner { max-width: 860px; margin: auto; }
.lifegen-terms__eyebrow { text-align: center; letter-spacing: 4px; text-transform: uppercase; color: #d4af37; font-size: .85rem; font-weight: 700; margin-bottom: 18px; }
.lifegen-terms h1 { font-family: "Cormorant Garamond", Georgia, serif; text-align: center; font-size: clamp(36px, 5vw, 52px); margin: 0; color: #fff; font-weight: 600; }
.lifegen-terms__rule { width: 80px; height: 2px; background: #d4af37; margin: 28px auto 40px; }
.lifegen-terms__card { background: rgba(255,255,255,.03); border: 1px solid rgba(212,175,55,.18); border-radius: 18px; padding: 44px; }
.lifegen-terms h2 { font-family: "Cormorant Garamond", Georgia, serif; font-size: 28px; color: #d4af37; margin: 36px 0 12px; font-weight: 600; }
.lifegen-terms h2:first-child { margin-top: 0; }
.lifegen-terms p, .lifegen-terms li { color: #d5dbe5; font-size: 16px; line-height: 1.85; }
.lifegen-terms ul { padding-left: 20px; }
.lifegen-terms a { color: #d4af37; }