.cta-section{padding:80px 0;text-align:center;background:var(--text-main);color:#fff}
.cta-section h2{color:#fff;margin-bottom:12px}
.cta-section p{color:rgba(255,255,255,.7);margin-bottom:24px;font-size:1.1rem}
.steps-list{display:flex;gap:0;position:relative;justify-content:space-between;padding:0}
.step-item{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;padding:0 16px}
.step-item:not(:last-child)::after{content:'';position:absolute;top:26px;left:calc(50% + 32px);width:calc(100% - 64px);height:2px;background:var(--border-color)}
.step-number{position:relative;z-index:2;width:52px;height:52px;border-radius:50%;background:var(--bg-main);border:2px solid var(--border-color);color:var(--text-muted);font-family:var(--font-heading);font-weight:700;font-size:1.2rem;display:flex;align-items:center;justify-content:center;margin-bottom:20px;transition:var(--transition)}
.step-item:hover .step-number{background:var(--acid-green);border-color:var(--acid-green);color:#000;transform:scale(1.1)}
.step-content h3{font-size:1rem;margin-bottom:6px}
.step-content p{color:var(--text-muted);font-size:.9rem;line-height:1.5}
@media(max-width:768px){.steps-list{flex-direction:column;gap:32px;align-items:flex-start}.step-item{flex-direction:row;text-align:left;align-items:flex-start;gap:16px;padding:0}.step-item:not(:last-child)::after{display:none}.step-number{margin-bottom:0;flex-shrink:0}}
.contacts-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.contacts-item{display:flex;align-items:center;gap:12px;margin-bottom:16px;font-size:1rem}
.contacts-item i{font-size:1.4rem;color:var(--acid-green)}
.contacts-messengers{display:flex;flex-direction:column;gap:12px;margin-top:24px}
.about-hero{display:flex;gap:40px;align-items:center;margin-bottom:40px}
.about-photo img{width:200px;height:200px;border-radius:50%;object-fit:cover}
.about-role{color:var(--text-muted);font-size:1.1rem}
.about-tech{margin-top:48px}
.tech-stack{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}
.tech-item{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-pill);font-size:.9rem;font-weight:500}
@media(max-width:768px){.contacts-grid{grid-template-columns:1fr}.about-hero{flex-direction:column;text-align:center}}
/* Contact form */
.contact-form{max-width:100%}
.form-group{margin-bottom:20px}
.form-group label{display:block;font-weight:600;font-size:.9rem;margin-bottom:6px}
.form-group .required{color:#ef4444}
.form-input{width:100%;padding:14px 20px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:1rem;font-family:var(--font-body);transition:var(--transition);background:var(--bg-main)}
.form-input:focus{outline:none;border-color:var(--acid-green);box-shadow:0 0 0 3px rgba(204,255,0,.2)}
.form-input--error{border-color:#ef4444!important;box-shadow:0 0 0 3px rgba(239,68,68,.15)!important}
textarea.form-input{resize:vertical;min-height:100px}
.contact-submit{margin-top:8px}
.form-message{margin-top:16px;padding:14px 20px;border-radius:var(--radius-sm);font-size:.95rem}
.form-message--success{background:rgba(204,255,0,.15);border:1px solid var(--acid-green);color:#333}
.form-message--error{background:rgba(239,68,68,.08);border:1px solid #fca5a5;color:#b91c1c}
