.hero { min-height: calc(100vh - var(--nav-height)); display: grid; align-items: center; padding: calc(var(--nav-height) + var(--sp-xl)) 0 var(--sp-xl); }
.hero-container { display: grid; gap: var(--sp-lg); align-items: center; }
.hero-title { font-family: var(--font-serif); font-size: var(--text-hero); line-height: 1.1; color: var(--white); margin-bottom: var(--sp-md); }
.hero-title em { color: var(--gold); font-style: italic; }
.hero-lead { font-size: 18px; line-height: 1.7; color: rgba(255,255,255,0.7); max-width: 520px; margin-bottom: var(--sp-lg); }
.hero-lead strong { color: var(--white); font-weight: 600; }
.hero-cta-row { display: flex; gap: var(--sp-sm); align-items: center; flex-wrap: wrap; margin-bottom: var(--sp-sm); }
.hero-micro-proof { font-size: 13px; color: rgba(255,255,255,0.45); letter-spacing: 0.5px; }
.hero-diagram { padding: var(--sp-lg) 0; }
.hero-diagram-item { display: flex; align-items: center; gap: var(--sp-sm); margin-bottom: var(--sp-md); opacity: 0; animation: fadeInRight 0.6s var(--ease) forwards; }
.hero-diagram-item:nth-child(1) { animation-delay: 0.2s; }
.hero-diagram-item:nth-child(2) { animation-delay: 0.4s; }
.hero-diagram-item:nth-child(3) { animation-delay: 0.6s; }
.hero-diagram-item:nth-child(4) { animation-delay: 0.8s; }
.diagram-num { font-family: var(--font-serif); font-size: 13px; color: var(--gold); min-width: 24px; }
.diagram-line { flex: 1; height: 1px; background: linear-gradient(to right, rgba(200,169,110,0.4), transparent); }
.diagram-label { font-size: 13px; color: rgba(255,255,255,0.55); letter-spacing: 1px; text-transform: uppercase; }
@keyframes fadeInRight { from { opacity: 0; transform: translateX(20px); } to { opacity: 1; transform: translateX(0); } }
.problem-grid { display: grid; gap: var(--sp-md); margin: var(--sp-lg) 0; }
.problem-card { background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.12); border-radius: var(--radius-lg); padding: var(--sp-md) var(--sp-md) var(--sp-lg); transition: background var(--transition); }
.problem-card:hover { background: rgba(255,255,255,0.10); }
.problem-icon { font-size: 28px; margin-bottom: var(--sp-sm); color: var(--gold); }
.problem-title { font-size: 18px; font-weight: 700; color: var(--white); margin-bottom: 10px; }
.problem-text { font-size: 15px; line-height: 1.7; color: rgba(255,255,255,0.72); }
.problem-quote { border-left: 3px solid var(--gold); padding: var(--sp-sm) var(--sp-md); margin: 0; font-family: var(--font-serif); font-size: 22px; color: var(--white); max-width: 600px; }
.etapy-grid { display: grid; gap: var(--sp-md); margin-top: var(--sp-lg); }
.etap-header { display: flex; justify-content: space-between; align-items: flex-start; }
.etap-num { font-family: var(--font-serif); font-size: 36px; color: var(--gold); line-height: 1; }
.etap-typ { font-size: 12px; color: var(--muted); text-transform: uppercase; letter-spacing: 1px; }
.etap-nazwa { font-family: var(--font-serif); font-size: 22px; color: var(--navy); margin: 10px 0 6px; }
.etap-tagline { font-size: 14px; color: var(--mid); font-style: italic; margin-bottom: var(--sp-sm); line-height: 1.5; }
.etap-lista { list-style: none; padding: 0; margin-bottom: var(--sp-sm); }
.etap-lista li { font-size: 14px; color: var(--steel); padding: 5px 0 5px 18px; position: relative; border-bottom: 1px solid var(--pale-dark); }
.etap-lista li::before { content: "→"; position: absolute; left: 0; color: var(--gold); font-size: 12px; }
.etap-footer { display: flex; align-items: center; justify-content: space-between; gap: var(--sp-sm); margin-top: var(--sp-sm); }
.etap-link { font-size: 13px; font-weight: 700; color: var(--navy); text-decoration: none; }
.start-grid { display: grid; gap: var(--sp-lg); align-items: center; }
.start-card-header { margin-bottom: var(--sp-md); }
.start-badge { display: inline-block; font-size: var(--text-xs); letter-spacing: 2px; color: var(--gold-dk); margin-bottom: var(--sp-sm); }
.start-price-num { display: block; font-family: var(--font-serif); font-size: 52px; color: var(--navy); line-height: 1; }
.start-price-unit, .start-min { color: var(--mid); font-size: 14px; }
.start-timeline { display: grid; gap: 10px; margin: var(--sp-md) 0; }
.start-step { display: grid; grid-template-columns: 82px 20px 1fr; gap: 10px; padding: 10px 0; border-bottom: 1px solid var(--pale-dark); font-size: 14px; }
.start-note { color: var(--mid); font-size: 14px; }
.proof-stats { display: grid; gap: var(--sp-md); margin: var(--sp-lg) 0; }
.proof-num { display: block; font-family: var(--font-serif); color: var(--gold); font-size: 56px; line-height: 1; }
.proof-label { color: rgba(255,255,255,0.72); font-size: 15px; }
.testimonial-box { border: 1px solid rgba(200,169,110,0.35); border-radius: var(--radius-lg); padding: var(--sp-md); max-width: 760px; }
.testimonial-quote { font-family: var(--font-serif); font-size: 24px; color: var(--white); margin-bottom: var(--sp-sm); }
.testimonial-author { color: rgba(255,255,255,0.6); font-style: normal; }
.cta-final { text-align: center; }
.cta-final-container { display: grid; justify-items: center; }
.cta-note { font-size: 13px; color: var(--mid); margin-top: var(--sp-sm); }
@media (min-width: 768px) {
  .problem-grid, .proof-stats { grid-template-columns: repeat(3, 1fr); }
  .etapy-grid, .start-grid { grid-template-columns: repeat(2, 1fr); }
  .hero-container { grid-template-columns: 55fr 45fr; }
}

/* branddrift-theme-v2 / assets/css/home.css */
