/* ============================================================
   Phase B — Layout polish
   ============================================================ */

/* Head links fix spacing */
.section-header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 28px;
  flex-wrap: wrap;
}
.section-header h2 {
  font-size: clamp(28px, 4vw, 38px);
  margin: 0;
}
.section-header h2 span { color: var(--accent); }
.section-link {
  font-size: 14px;
  font-weight: 700;
  color: var(--accent);
  white-space: nowrap;
}
.section-link:hover { text-decoration: underline; }

.mega-subhead,
.footer-subhead {
  margin-top: 14px;
  margin-bottom: 8px;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: var(--text-muted);
}

/* WhatsApp in header */
.btn-wa {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #25d366;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  flex-shrink: 0;
}
.btn-wa::before { content: 'WA'; }

/* Certificates */
.certificates-section {
  padding: 56px 0;
  background: var(--light);
}
.cert-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.cert-card {
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: 22px 18px;
  box-shadow: var(--shadow-sm);
}
.cert-card strong {
  display: block;
  font-size: 15px;
  margin-bottom: 6px;
}
.cert-card p {
  font-size: 13px;
  color: var(--text-muted);
  line-height: 1.45;
  margin: 0;
}

/* How we work — 3 steps */
.how-section { padding: 56px 0; }
.steps {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.step {
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: 28px 22px;
  position: relative;
}
.step-num {
  width: 40px;
  height: 40px;
  background: var(--accent);
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'Oswald', sans-serif;
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 14px;
}
.step h3 {
  font-family: 'Roboto Condensed', sans-serif;
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 8px;
}
.step p {
  font-size: 14px;
  color: var(--text-muted);
  line-height: 1.5;
}

/* Services — 4 main cards */
.services-section { padding: 56px 0; background: var(--white); }
.services-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
.service-card {
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  overflow: hidden;
  background: var(--white);
  transition: box-shadow var(--transition), transform var(--transition);
}
.service-card:hover {
  box-shadow: var(--shadow-md);
  transform: translateY(-2px);
}
.service-img {
  height: 120px;
  background: linear-gradient(135deg, #2a2a2a 0%, #1a1a1a 100%);
  opacity: .9;
}
.service-body { padding: 18px; }
.service-body h3 {
  font-size: 17px;
  font-weight: 700;
  margin-bottom: 8px;
}
.service-body p {
  font-size: 13px;
  color: var(--text-muted);
  line-height: 1.45;
  margin-bottom: 12px;
  min-height: 38px;
}

/* Cheaper block */
.cheaper-section {
  padding: 48px 0;
  background: var(--dark);
  color: #fff;
}
.cheaper-inner {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
  display: flex;
  align-items: center;
  gap: 32px;
  flex-wrap: wrap;
}
.cheaper-text h2 {
  font-size: clamp(28px, 4vw, 36px);
  margin-bottom: 8px;
}
.cheaper-text h2 span { color: var(--accent); }
.cheaper-form {
  display: flex;
  gap: 10px;
  flex: 1;
  min-width: 280px;
  flex-wrap: wrap;
}
.cheaper-form input {
  flex: 1;
  min-width: 160px;
  padding: 12px 14px;
  border: none;
  border-radius: var(--radius);
  font-size: 14px;
}

/* Reviews polish */
.reviews-section { padding: 56px 0; background: var(--light); }
.review-card {
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: 22px;
  height: 100%;
}

/* Footer socials */
.footer-social-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  font-size: 11px;
  font-weight: 700;
  margin-right: 8px;
}
.footer-social-btn--tg { background: #229ed9; color: #fff; }
.footer-social-btn--wa { background: #25d366; color: #fff; }

/* Float WhatsApp */
.float-wa {
  position: fixed;
  right: 18px;
  bottom: 78px;
  z-index: 900;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: #25d366 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347z'/%3E%3C/svg%3E") center/26px no-repeat;
  box-shadow: 0 4px 16px rgba(37,211,102,.45);
}

/* Trust bar */
.trust-bar {
  background: var(--white);
  border-bottom: 1px solid var(--border);
  padding: 20px 0;
}
.trust-inner {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.trust-num {
  font-family: 'Oswald', sans-serif;
  font-size: 22px;
  font-weight: 600;
  color: var(--accent);
}
.trust-label {
  font-size: 12px;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: .5px;
}

/* Catalog cards */
.catalog-section { padding: 56px 0; }
.cat-card {
  display: block;
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: 22px 18px;
  transition: border-color var(--transition), box-shadow var(--transition);
}
.cat-card:hover {
  border-color: var(--accent);
  box-shadow: var(--shadow-md);
}

@media (max-width: 992px) {
  .cert-grid { grid-template-columns: repeat(2, 1fr); }
  .services-grid { grid-template-columns: repeat(2, 1fr); }
  .steps { grid-template-columns: 1fr; }
  .trust-inner { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 576px) {
  .cert-grid,
  .services-grid,
  .trust-inner { grid-template-columns: 1fr; }
  .cheaper-inner { flex-direction: column; align-items: stretch; }
}
