#tratamentos {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding-bottom: 6.5rem;
  background-color: #E9EFF0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 720 620'%3E%3Cg fill='none' stroke='%23617A80' stroke-width='2' opacity='.12'%3E%3Cpath d='M-72 518C89 297 214 686 400 359S652 54 794 201'/%3E%3Cpath d='M-99 592C91 369 264 733 455 436S685 138 811 289'/%3E%3Cpath d='M-120 451C68 225 194 616 361 289S628 22 772 153'/%3E%3Cpath d='M-112 568C76 341 247 705 429 404S677 101 806 245'/%3E%3Cpath d='M-55 614C124 419 291 755 490 472S706 205 834 338'/%3E%3C/g%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 480 560'%3E%3Cg fill='none' stroke='%23B5697A' stroke-width='2' opacity='.09'%3E%3Cpath d='M530 46C356 85 461 243 281 250S91 342-39 485'/%3E%3Cpath d='M547 111C377 147 471 302 302 318S117 401-23 539'/%3E%3Cpath d='M563 176C397 210 490 360 326 385S142 463-5 590'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat, no-repeat;
  background-position: left bottom, right 2.5rem;
  background-size: min(58vw, 720px) auto, min(33vw, 480px) auto;
  color: #000000;
}
#tratamentos::before {
  content: '';
  position: absolute;
  z-index: 0;
  width: 190px;
  height: 165px;
  top: auto;
  right: -1.5rem;
  bottom: 3.5rem;
  opacity: .55;
  background:
    radial-gradient(circle at 50% 22%, rgba(97,122,128,.25) 0 14%, transparent 14.8%),
    radial-gradient(circle at 27% 65%, rgba(181,105,122,.12) 0 15%, transparent 15.8%),
    radial-gradient(circle at 75% 65%, rgba(219,188,104,.25) 0 15%, transparent 15.8%);
}
#tratamentos::after {
  content: '';
  position: absolute;
  z-index: 1;
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 68px;
  pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 120' preserveAspectRatio='none'%3E%3Cpath fill='%23F7F5F2' d='M0 57c154 38 301 52 480 30 187-23 336-77 553-52 150 17 277 51 407 22v43H0z'/%3E%3C/svg%3E") bottom / 100% 100% no-repeat;
}
#tratamentos .section-heading { position: relative; z-index: 1; max-width: 720px; margin: 0 auto 2.4rem; text-align: center; }
#tratamentos .eyebrow { color: #B5697A; }
#tratamentos h2 { color: #000000; font-size: clamp(2rem, 3.1vw, 2.9rem); }
#tratamentos .section-heading > p:not(.eyebrow) { max-width: 520px; margin: .32rem auto 0; color: #43575c; font-size: .78rem; line-height: 1.45; }
.treatment-grid { position: relative; z-index: 1; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.15rem; max-width: 860px; margin-inline: auto; }
.treatment-card {
  display: block;
  position: relative;
  aspect-ratio: 4 / 3;
  min-height: 240px;
  overflow: hidden;
  color: #FFFFFF;
  text-decoration: none;
  background: #617A80;
}
.treatment-card img { width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; transition: transform .5s ease; }
.treatment-card__placeholder { position: absolute; inset: 0; display: grid; place-items: center; background: linear-gradient(135deg, #71888d, #526b72); color: rgba(255,255,255,.9); }
.treatment-card__placeholder span { padding: .55rem .75rem; border: 1px solid rgba(219,188,104,.85); color: #FFFFFF; font-size: .7rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.treatment-card::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(0,0,0,.86), rgba(0,0,0,.05) 62%); }
.treatment-card__content { position: absolute; z-index: 1; inset: auto 1.35rem 1.3rem; display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; }
.treatment-card h3 { display: flex; align-items: center; min-height: 3.65rem; margin: 0; max-width: 15ch; padding-left: .7rem; border-left: 3px solid #DBBC68; color: #FFFFFF; font-family: var(--font-body); font-size: 1.05rem; font-weight: 700; line-height: 1.15; text-transform: uppercase; }
.treatment-card__arrow { flex: 0 0 auto; padding-bottom: .05rem; font-size: 1.5rem; line-height: 1; }
.treatment-card:hover img, .treatment-card:focus-visible img { transform: scale(1.05); }
.treatment-card:focus-visible { outline: 3px solid #DBBC68; outline-offset: 4px; }
@media (max-width: 720px) { .treatment-grid { grid-template-columns: 1fr; max-width: 460px; gap: 1rem; } .treatment-card { min-height: 270px; } }
@media (max-width: 540px) { #tratamentos::before { width: 130px; height: 115px; bottom: 1.5rem; } #tratamentos .section-heading { margin-bottom: 1.8rem; } .treatment-card { min-height: 245px; } }

/* A onda encontra a seção seguinte no mesmo tom, sem uma faixa intermediária. */
#tratamentos + .section { background: #F7F5F2; }
