/* Suntor — página "Linhas de Cuidado" (Figma: Linhas de Cuidado 2328:4849, frame 1440px).
   Hero (.hero--page), tabs (.tabs-sobre), .decor and .cta-visit come from site.css. */

.linhas article > * { margin-left: 0; margin-right: 0; max-width: none; }

/* ---------- Hero ---------- */
.hero--linhas .hero__text { width: 733px; }
.hero--linhas .hero__text p { width: 681px; max-width: 100%; }

/* ---------- Perfis que atendemos (title) + tabs ---------- */
.perfis { position: relative; overflow: hidden; padding: 80px var(--gutter) 48px; display: flex; justify-content: center; }
.perfis__head { position: relative; display: flex; flex-direction: column; align-items: center; gap: 16px; text-align: center; }
.perfis__head .title { width: 503px; max-width: 100%; }
.perfis__head p { width: 581px; max-width: 100%; margin: 0; font: 400 16px/1.4 var(--font-body); color: var(--primary-900); }
.tabs-sobre--linhas { padding-bottom: 80px; }

/* ---------- Comparativo ---------- */
.comparativo { position: relative; overflow: hidden; padding: 0 var(--gutter) 64px; display: flex; flex-direction: column; gap: 48px; }
.comparativo__head { position: relative; display: flex; flex-direction: column; gap: 12px; }
.comparativo__head .title { white-space: nowrap; }
.comparativo__grid { position: relative; display: flex; gap: 48px; }
.linha-card { flex: 1 1 0; min-width: 0; height: 301px; border-radius: 16px; overflow: hidden; background: var(--primary-500); display: flex; align-items: flex-start; }
.linha-card__media { position: relative; flex: 1 1 0; min-width: 0; height: 100%; overflow: hidden; }
.linha-card__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
/* photo melts into the pink panel */
.linha-card__media::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to left, #cd6869 0%, rgba(205, 104, 105, .1) 50%, rgba(205, 104, 105, 0) 100%); }
.linha-card__body { flex: 1 1 0; min-width: 0; padding: 24px; display: flex; flex-direction: column; gap: 24px; color: var(--white); }
.linha-card--stretch .linha-card__body { height: 100%; justify-content: space-between; }
.linha-card--stretch .linha-card__texts { min-height: 125px; justify-content: center; }
.linha-card__texts { display: flex; flex-direction: column; gap: 8px; }
.linha-card h3 { margin: 0; font: 500 24px/1.2 var(--font-head); white-space: nowrap; }
.linha-card p { margin: 0; font: 400 16px/1.4 var(--font-body); }
.linha-card__btn { width: 100%; padding: 0 16px; }

/* ---------- CTA ---------- */
.cta-visit--linhas .cta-visit__organic--left { left: calc(50% - 792px); }
.cta-visit--linhas .cta-visit__title { white-space: nowrap; }

/* ---------- Responsive ---------- */
@media (max-width: 1100px) {
  .hero--linhas .hero__text { width: min(733px, 100%); }
  .comparativo__grid { flex-direction: column; gap: 24px; }
  .cta-visit--linhas .cta-visit__title { white-space: normal; }
}

@media (max-width: 720px) {
  .perfis { padding: 56px var(--gutter) 24px; }
  .comparativo { gap: 32px; padding-bottom: 40px; }
  .comparativo__head .title { white-space: normal; }
  .linha-card { flex-direction: column; height: auto; }
  .linha-card__media { flex: none; width: 100%; height: 180px; }
  .linha-card__media::after { background: linear-gradient(to top, #cd6869 0%, rgba(205, 104, 105, .1) 50%, rgba(205, 104, 105, 0) 100%); }
  .linha-card__body, .linha-card--stretch .linha-card__body { height: auto; }
  .linha-card--stretch .linha-card__texts { min-height: 0; }
  .linha-card h3 { white-space: normal; }
}
