/* Why */
.why{ background:#51a7ae; }
.why__inner{ max-width:1200px; margin:0 auto; padding: clamp(18px,4vw,36px) clamp(14px,3vw,28px);
  display:grid; grid-template-columns:1.1fr .9fr; gap:clamp(14px,4vw,36px); align-items:center; }
@media (max-width:960px){ .why__inner{ grid-template-columns:1fr; } }
.why__media{ width:100%; border-radius:16px; overflow:hidden; box-shadow:var(--shadow); background:#2e6e73; }
.why__media img{ width:100%; height:100%; display:block; aspect-ratio:4/3; object-fit:cover; }
.why__content{ color:#fff; display:grid; gap:clamp(8px,2vw,14px); }
.why__title{ margin:0; font-weight:800; color:var(--accent); font-size:clamp(20px,4.8vw,34px); letter-spacing:.3px; }
.why__text{ margin:0; font-size:clamp(14px,2.4vw,16px); line-height:1.6; }
.why__btn{ display:inline-block; font-weight:800; background:var(--accent); color:#1f2430; padding:12px 18px; border-radius:100px; box-shadow:0 8px 18px rgba(0,0,0,.12); }

/* Events (cards) */
.events{ max-width:1200px; margin:28px auto; padding:0 clamp(14px,3vw,28px); }
.events__head{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:clamp(14px,3vw,24px); }
.events__title{ margin:0; font-size:clamp(20px,4vw,28px); font-weight:800; letter-spacing:.3px; }
.events__grid{ display:grid; grid-template-columns:repeat(12,1fr); gap:clamp(12px,2.5vw,24px); }
@media (max-width:1200px){ .events__grid{ grid-template-columns:repeat(8,1fr);} }
@media (max-width:760px){ .events__grid{ grid-template-columns:repeat(4,1fr);} }
.ecard{ grid-column:span 4; background:#e9ebf1; border:1px solid rgba(0,0,0,.18); border-radius:14px; overflow:hidden; box-shadow:0 10px 28px rgba(18,27,51,.10); display:flex; flex-direction:column; }
.ecard__media{ width:100%; aspect-ratio:16/9; object-fit:cover; display:block; background:#d7dbe6; border-bottom:1px solid rgba(0,0,0,.16); }
.ecard__body{ padding:14px; display:grid; gap:8px; }
.ecard__title{ margin:0; text-transform:uppercase; font-weight:800; line-height:1.15; font-size:clamp(16px,2.8vw,22px); text-align:center; }
.ecard__footer{ padding:12px 14px 16px; }

/* Clinic */
.clinic{ color:var(--accent); }
.clinic__inner{ max-width:1200px; margin:0 auto; padding: clamp(24px,5vw,48px) clamp(14px,3vw,28px); display:grid; justify-items:center; gap:clamp(12px,3vw,20px); text-align:center; }
.clinic__title{ margin:0; font-weight:800; font-size:clamp(20px,4.8vw,34px); }
.clinic__video{ width:min(100%,880px); border-radius:16px; overflow:hidden; box-shadow:0 10px 28px rgba(0,0,0,.18); background:#000; }
.clinic__video>*{ width:100%; height:auto; aspect-ratio:16/9; display:block; border:0; object-fit:cover; }
.clinic__btn{ display:inline-block; margin-top:6px; font-weight:800; background:var(--accent); color:#1f2430; padding:12px 18px; border-radius:100px; }

/* Reviews (carrossel) */
.reviews__inner{ max-width:1200px; margin:0 auto; padding: clamp(24px,5vw,48px) clamp(14px,3vw,28px); }
.reviews__title{ margin:0 0 clamp(12px,2.5vw,18px); font-weight:800; font-size:clamp(20px,4.6vw,28px); text-align:center; }
.t-carousel{ position:relative; overflow:hidden; border-radius:16px; }
.t-track{ display:flex; transition:transform .5s ease; }
.t-slide{ flex:0 0 100%; padding: clamp(10px,3vw,18px); display:grid; place-items:center; }
.t-grid{ display:grid; grid-template-columns:repeat(12,1fr); gap:clamp(12px,2.5vw,20px); width:100%; }
@media (max-width:960px){ .t-grid{ grid-template-columns:repeat(6,1fr);} }
@media (max-width:640px){ .t-grid{ grid-template-columns:repeat(4,1fr);} }
.bubble{ grid-column:span 4; background:#fff; color:var(--text); border:1px solid rgba(0,0,0,.08); border-radius:14px; box-shadow:0 10px 28px rgba(18,27,51,.10); padding:16px 16px 18px; position:relative; }
@media (max-width:960px){ .bubble{ grid-column:span 6;} }
@media (max-width:640px){ .bubble{ grid-column:span 4;} }
.bubble::after{ content:""; position:absolute; left:24px; bottom:-10px; width:18px; height:18px; background:inherit;
  border-left:1px solid rgba(0,0,0,.08); border-bottom:1px solid rgba(0,0,0,.08); transform:rotate(45deg); box-shadow:6px 6px 18px rgba(18,27,51,.06); }
.bubble__name{ margin:0 0 6px; font-weight:800; font-size:15px; }
.bubble__text{ margin:0; font-size:14px; line-height:1.55; color:var(--muted); }

/* Network (logos) */
.network{ background:var(--accent); color:var(--brand-alt); }
.network__inner{ max-width:1200px; margin:0 auto; padding: clamp(24px,5vw,48px) clamp(14px,3vw,28px); }
.network__title{ margin:0 0 clamp(12px,3vw,18px); font-weight:800; font-size:clamp(20px,4.8vw,34px); text-align:center; color:var(--brand-alt); }
.n-track{ display:flex; transition:transform .5s ease; }
.n-slide{ flex:0 0 100%; padding:clamp(12px,3vw,20px); }
.n-row{ display:flex; flex-wrap:wrap; justify-content:center; gap:clamp(14px,3vw,24px); }
.logo{ width:clamp(70px,10vw,110px); height:clamp(70px,10vw,110px); border-radius:50%; overflow:hidden; background:#fff; box-shadow:0 8px 18px rgba(0,0,0,.12); border:2px solid rgba(255,255,255,.75); }
.logo img{ width:100%; height:100%; object-fit:cover; display:block; }

/* Appointment */
.appointment{ background:#51a7ae; color:#fff; }
.appointment__inner{ max-width:1200px; margin:0 auto; padding: clamp(24px,5vw,56px) clamp(14px,3vw,28px);
  display:grid; grid-template-columns:1.1fr .9fr; gap:clamp(18px,4vw,36px); align-items:center; }
@media (max-width:960px){ .appointment__inner{ grid-template-columns:1fr; } }
.appointment__title{ margin:0 0 clamp(10px,2vw,14px); color:var(--accent); font-weight:800; font-size:clamp(22px,5vw,40px); }
.appointment__btn{ display:inline-flex; align-items:center; gap:10px; font-weight:800; background:var(--accent); color:#1f2430;
  padding:14px 22px; border-radius:999px; box-shadow:0 12px 26px rgba(0,0,0,.18); }

/* Contact */
.contact{ background:var(--bg); color:var(--text); }
.contact__inner{ max-width:1200px; margin:0 auto; padding: clamp(24px,5vw,56px) clamp(14px,3vw,28px); }
.contact__form{ display:grid; grid-template-columns:repeat(12,1fr); gap:clamp(12px,2.5vw,20px);
  background:#fff; border:1px solid rgba(0,0,0,.06); border-radius:16px; padding:clamp(16px,3.2vw,28px); box-shadow:0 10px 28px rgba(18,27,51,.08); }
@media (max-width:760px){ .contact__form{ grid-template-columns:repeat(6,1fr);} }
.form-field{ grid-column:span 6; } .form-field--full{ grid-column:span 12; }

/* Footer */
.footer{ background:#51a7ae; color:#fff; --gap: clamp(16px,3vw,28px); }
.footer a{ color:#fff; text-decoration:none; }
.footer a:hover{ text-decoration:underline; }
.footer__inner{ max-width:1200px; margin:0 auto; padding: clamp(28px,5vw,56px) clamp(14px,3vw,28px); display:grid; gap:var(--gap); }
.footer__top{ display:grid; grid-template-columns:1.2fr .8fr .8fr; gap:var(--gap); align-items:start; }
@media (max-width:980px){ .footer__top{ grid-template-columns:1fr 1fr; } }
@media (max-width:640px){ .footer__top{ grid-template-columns:1fr; } }
.footer__year{ text-align:center; font-weight:800; font-size:14px; opacity:.95; padding-top:2px; }
