.elementor-6184 .elementor-element.elementor-element-1324359{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6184 .elementor-element.elementor-element-1324359:not(.elementor-motion-effects-element-type-background), .elementor-6184 .elementor-element.elementor-element-1324359 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#3F040B;}@media(min-width:768px){.elementor-6184 .elementor-element.elementor-element-1324359{--content-width:100%;}}/* Start custom CSS for html, class: .elementor-element-5848a10 */<style>
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --black:     #0A0A0A;
  --rose:      #C9748A;
  --rose-lite: #E8A0B2;
  --rose-dim:  rgba(201,116,138,0.18);
  --gold:      #C9A86C;
  --cream:     #F5EDE0;
  --cream-dim: rgba(245,237,224,0.5);
}

body {
  background: var(--black);
  font-family: 'DM Sans', sans-serif;
  min-height: 100vh;
  overflow-x: hidden;
}
body::before {
  content: '';
  position: fixed; inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");
  pointer-events: none; z-index: 0; opacity: 0.6;
}

.container {
  position: relative; z-index: 1;
  max-width: 440px; margin: 0 auto;
  padding: 0 22px 64px;
}

/* ── HEADER ── */
.header {
  text-align: center;
  padding: 52px 0 36px;
  animation: fadeDown 0.7s ease both;
}
.avatar-wrap {
  position: relative; display: inline-block; margin-bottom: 22px;
}
.avatar-wrap::before {
  content: ''; position: absolute; inset: -7px; border-radius: 50%;
  border: 1.5px solid var(--rose); opacity: 0.5;
}
.avatar-wrap::after {
  content: ''; position: absolute; inset: -16px; border-radius: 50%;
  border: 1px solid var(--gold); opacity: 0.2;
}
.avatar-img {
  width: 92px; 
  height: 92px; 
  border-radius: 50%;
  object-fit: cover; 
  object-position: center; /* Centraliza a imagem no meio do círculo */
  display: block;
  margin: 0 auto; /* Garante que a imagem fique no centro do wrap */
}
.doctor-label {
  font-size: 9px; font-weight: 500; letter-spacing: 4px;
  text-transform: uppercase; color: var(--rose); margin-bottom: 7px; opacity: 0.8;
}
.name {
  font-family: 'Playfair Display', serif;
  font-size: 28px; font-weight: 900; color: var(--cream);
  line-height: 1.1; letter-spacing: -0.5px; margin-bottom: 11px;
}
.tagline {
  font-size: 12.5px; color: var(--cream-dim); font-weight: 300;
  line-height: 1.65; max-width: 230px; margin: 0 auto 26px;
}
.socials { display: flex; justify-content: center; gap: 14px; }
.social-icon {
  width: 36px; height: 36px; border-radius: 50%;
  border: 1px solid rgba(201,116,138,0.28);
  display: flex; align-items: center; justify-content: center;
  color: var(--rose); text-decoration: none;
  transition: all 0.22s ease;
}
.social-icon:hover { background: var(--rose-dim); border-color: var(--rose); transform: translateY(-2px); }
.social-icon svg { width: 15px; height: 15px; fill: currentColor; }

.divider {
  display: flex; align-items: center; gap: 10px;
  margin: 34px 0 26px; opacity: 0.18;
}
.divider::before,.divider::after { content: ''; flex: 1; height: 1px; background: var(--rose); }
.divider span { width: 5px; height: 5px; background: var(--rose); transform: rotate(45deg); display: block; }

/* ── BANNERS ── */
.banners { display: flex; flex-direction: column; gap: 16px; }

.banner {
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  text-decoration: none;
  display: block;
  cursor: pointer;
  border: 1px solid rgba(201,116,138,0.13);
  /* TALL enough to show face clearly */
  height: 170px;
  transition: transform 0.28s ease, box-shadow 0.28s ease;
  animation: fadeUp 0.55s ease both;
}
.banner:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 52px rgba(10,10,10,0.85), 0 0 0 1px rgba(201,116,138,0.28);
}

/* Full-height photo, large portion of banner */
.b-photo {
  position: absolute;
  top: 0; bottom: 0;
  right: 0;
  /* Wide enough to show person properly */
  width: 55%;
  object-fit: cover;
  /* Top-aligned so face always shows */
  object-position: top center;
}

/* Gradient: solid dark on text side, fades into photo */
.b-mask {
  position: absolute; inset: 0;
  background: linear-gradient(
    to right,
    var(--bg, #120808) 30%,
    rgba(18,8,8,0.88) 48%,
    rgba(18,8,8,0.4)  65%,
    transparent 100%
  );
}

/* flip: photo on left, text on right */
.banner.flip .b-photo {
  left: 0; right: auto;
  object-position: top center;
}
.banner.flip .b-mask {
  background: linear-gradient(
    to left,
    var(--bg, #120808) 30%,
    rgba(18,8,8,0.88) 48%,
    rgba(18,8,8,0.4)  65%,
    transparent 100%
  );
}
.banner.flip .b-inner {
  left: auto; right: 0;
  padding: 0 24px 0 0;
  text-align: right;
}
.banner.flip .b-line { left: auto; right: 0; }

/* Rose accent line */
.b-line {
  position: absolute; left: 0; top: 0; bottom: 0;
  width: 3px;
  background: linear-gradient(to bottom, transparent, var(--rose), transparent);
  opacity: 0.6; z-index: 2;
}

/* Text block — left 48% of banner */
.b-inner {
  position: absolute; inset: 0;
  display: flex; align-items: center;
  padding: 0 0 0 24px;
  z-index: 2;
  width: 52%;
}
.b-text { flex: 1; }

.b-location {
  display: inline-flex; align-items: center; gap: 5px;
  border: 1px solid rgba(201,116,138,0.4);
  color: var(--rose); font-size: 8px; font-weight: 500;
  letter-spacing: 2px; text-transform: uppercase;
  padding: 3px 9px; border-radius: 20px; margin-bottom: 9px;
}
.b-location svg { width: 8px; height: 8px; fill: var(--rose); flex-shrink: 0; }

.pill {
  display: inline-block;
  border: 1px solid rgba(201,116,138,0.4);
  color: var(--rose); font-size: 8px; font-weight: 500;
  letter-spacing: 2px; text-transform: uppercase;
  padding: 3px 9px; border-radius: 20px; margin-bottom: 9px;
}

.b-title {
  font-family: 'Playfair Display', serif;
  font-size: 22px; font-weight: 800; color: var(--cream);
  line-height: 1.15; letter-spacing: -0.3px;
}
.b-title em { font-style: italic; color: var(--rose-lite); }

.b-sub {
  font-size: 11px; color: rgba(245,237,224,0.35);
  font-weight: 300; margin-top: 6px; letter-spacing: 0.3px;
}

/* individual dark bg tones */
.bn-vitoria { --bg: #120808; background: #120808; animation-delay: 0.10s; }
.bn-campina { --bg: #0E0808; background: #0E0808; animation-delay: 0.20s; }
.bn-site    { --bg: #100A0A; background: #100A0A; animation-delay: 0.30s; }

@keyframes fadeDown {
  from { opacity: 0; transform: translateY(-18px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes fadeUp {
  from { opacity: 0; transform: translateY(22px); }
  to   { opacity: 1; transform: translateY(0); }
}

.footer {
  text-align: center; margin-top: 48px;
  font-size: 9px; letter-spacing: 2px; text-transform: uppercase;
  color: rgba(245,237,224,0.1);
}
</style>/* End custom CSS */