/* Site shell: the source widgets relied on section backgrounds in the old page. */
body.jwe-site-page, body.jwe-treatment-page { margin: 0; background: #f6f7f5; }
body.jwe-site-page #content, body.jwe-treatment-page #content { width: 100%; max-width: none; margin: 0; padding: 0; overflow: clip; }
body.jwe-site-page #content > .elementor,
body.jwe-treatment-page #content > .elementor { width: 100%; max-width: none; }
body.jwe-site-page .elementor > .elementor-element.e-con,
body.jwe-site-page .elementor > .e-con,
body.jwe-treatment-page .elementor > .elementor-element.e-con {
  width: 100%; max-width: none; margin: 0; padding: 0; gap: 0;
  --width: 100%; --container-max-width: 100%; --padding-top: 0;
  --padding-right: 0; --padding-bottom: 0; --padding-left: 0;
  --gap: 0px;
}
body.jwe-site-page .elementor-widget-jwe-hero .fwe-hero-widget {
  display: flex; align-items: center; min-height: 680px;
  background: #02070a;
}
body.jwe-site-page .elementor-widget-jwe-abordagem .fwe-abordagem-widget,
body.jwe-site-page .elementor-widget-jwe-doutor .fwe-doutor-widget {
  background: #f6f7f5;
}
body.jwe-site-page .elementor-widget-jwe-tratamentos .fwe-tratamentos-widget,
body.jwe-site-page .elementor-widget-jwe-expertise .fwe-expertise-widget,
body.jwe-site-page .elementor-widget-jwe-diferenciais .fwe-diferenciais-widget,
body.jwe-site-page .elementor-widget-jwe-mapa-contato .fwe-mapa-widget {
  background: #02070a;
}
body.jwe-site-page .elementor-widget-jwe-footer .fwe-footer-widget { width: 100%; margin: 0; }
body.jwe-site-page .elementor-widget-jwe-header { min-height: 0; }
body.jwe-treatment-page .elementor-widget-jwe-tratamento-page { background: #020508; }

/* Editorial portrait composition for the home hero. Widget settings remain editable. */
body.home.jwe-site-page .elementor-widget-jwe-hero .fwe-hero-widget.fwe-hero-has-portrait {
  position: relative; isolation: isolate; overflow: hidden; min-height: min(760px, 86vh);
  background: radial-gradient(ellipse at 77% 44%, #202b30 0%, #0d1519 39%, #080d10 72%);
}
body.home.jwe-site-page .elementor-widget-jwe-hero .fwe-hero-widget.fwe-hero-has-portrait::after {
  content: ''; position: absolute; inset: auto 0 0; height: 28%; z-index: -1;
  background: linear-gradient(transparent, #080d10 96%); pointer-events: none;
}
body.home.jwe-site-page .fwe-hero-has-portrait .fwe-hero-content {
  position: relative; z-index: 2; width: 53%; max-width: 690px;
}
body.home.jwe-site-page .fwe-hero-has-portrait .fwe-hero-title-main {
  font-size: clamp(52px, 5.4vw, 82px); line-height: 1.01;
}
body.home.jwe-site-page .fwe-hero-has-portrait .fwe-hero-title-italic {
  font-size: clamp(43px, 4.55vw, 68px); line-height: 1.06;
}
body.home.jwe-site-page .fwe-hero-has-portrait .fwe-hero-description {
  max-width: 420px; margin-top: 30px; margin-bottom: 32px;
}
body.home.jwe-site-page .fwe-hero-visual {
  position: absolute; z-index: 1; bottom: 0; right: max(2%, calc((100vw - 1440px) / 2));
  width: min(57%, 810px); height: 100%; pointer-events: none;
}
body.home.jwe-site-page .fwe-hero-visual-frame {
  position: absolute; width: 77%; aspect-ratio: 1; left: 15%; top: 13%; border: 1px solid rgba(211,182,139,.23);
  border-radius: 50%; box-shadow: 0 0 0 45px rgba(211,182,139,.025), 0 0 0 90px rgba(211,182,139,.018);
}
body.home.jwe-site-page .fwe-hero-portrait {
  position: absolute; bottom: -12%; right: 1%; width: 100%; height: auto;
  max-height: 112%; object-fit: contain; object-position: bottom center;
  filter: drop-shadow(-20px 20px 48px rgba(0,0,0,.42));
}
body.home.jwe-site-page .fwe-hero-visual-caption {
  position: absolute; bottom: 42px; right: 25px; z-index: 2;
  color: #d6b98d; font: 600 10px/1.5 'Manrope',sans-serif; letter-spacing: .28em;
}
@media (max-width: 1024px) {
  body.home.jwe-site-page .fwe-hero-has-portrait .fwe-hero-content { width: 60%; }
  body.home.jwe-site-page .fwe-hero-visual { right: -8%; width: 65%; opacity: .8; }
  body.home.jwe-site-page .fwe-hero-has-portrait .fwe-hero-title-main { font-size: clamp(44px, 6vw, 66px); }
  body.home.jwe-site-page .fwe-hero-has-portrait .fwe-hero-title-italic { font-size: clamp(38px, 5vw, 56px); }
}
@media (max-width: 767px) {
  body.home.jwe-site-page .elementor-widget-jwe-hero .fwe-hero-widget.fwe-hero-has-portrait {
    min-height: 760px; align-items: flex-start;
  }
  body.home.jwe-site-page .fwe-hero-has-portrait .fwe-hero-content {
    width: 100%; max-width: 520px; text-align: left;
  }
  body.home.jwe-site-page .fwe-hero-has-portrait .fwe-hero-title-main { font-size: clamp(40px, 10vw, 59px); }
  body.home.jwe-site-page .fwe-hero-has-portrait .fwe-hero-title-italic { font-size: clamp(34px, 8.5vw, 49px); }
  body.home.jwe-site-page .fwe-hero-has-portrait .fwe-hero-eyebrow,
  body.home.jwe-site-page .fwe-hero-has-portrait .fwe-hero-action { justify-content: flex-start; }
  body.home.jwe-site-page .fwe-hero-has-portrait .fwe-hero-description { margin-top: 20px; margin-bottom: 24px; }
  body.home.jwe-site-page .fwe-hero-visual { width: min(530px, 105%); height: 460px; right: -18%; opacity: .8; }
  body.home.jwe-site-page .fwe-hero-portrait { bottom: -24%; }
  body.home.jwe-site-page .fwe-hero-visual-caption { display: none; }
  body.jwe-site-page .elementor-widget-jwe-hero .fwe-hero-widget {
    min-height: 590px;
  }
}
