.elementor-280 .elementor-element.elementor-element-3a3b82d0{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-280 .elementor-element.elementor-element-428a3d46{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}/* Start custom CSS for html, class: .elementor-element-39eff9f9 *//* ---------- SCOPE: tudo dentro de .sm-page ---------- */
.sm-page *, .sm-page *::before, .sm-page *::after {
  box-sizing: border-box; margin: 0; padding: 0;
}
.sm-page { 
  --c-bg:        #FAFAF8;
  --c-bg-alt:    #F0EDE8;
  --c-bg-dark:   #1E1E1C;
  --c-bg-darker: #141412;
  --c-text:      #1A1A18;
  --c-text-mid:  #4A4A47;
  --c-text-soft: #8A8A84;
  --c-accent:    #8B9E93;
  --c-accent-dk: #6B7E73;
  --c-border:    #E0DDD8;
  --c-cream:     #EDE8E0;
  --c-white:     #FFFFFF;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans:  'Jost', system-ui, sans-serif;
  --fw-l: 300; --fw-r: 400; --fw-m: 500; --fw-s: 600;
  --pad: clamp(1.25rem, 5vw, 3rem);
  --max: 1200px;
  --spy: clamp(4rem, 8vw, 8rem);
  --tr: .3s ease;
  --tr-s: .6s ease;

  font-family: var(--sans);
  font-weight: var(--fw-l);
  color: var(--c-text);
  background: var(--c-bg);
  -webkit-font-smoothing: antialiased;
  line-height: 1.75;
  width: 100%;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  overflow-x: hidden;
  box-sizing: border-box;
}

.sm-page img { display:block; max-width:100%; object-fit:cover; }
.sm-page a  { text-decoration:none; }
.sm-page ul { list-style:none; }
.sm-page button { cursor:pointer; border:none; background:none; font:inherit; }

/* ── REVEAL ── */
.sm-page .rv { opacity:0; transform:translateY(26px); transition: opacity .72s cubic-bezier(.22,1,.36,1), transform .72s cubic-bezier(.22,1,.36,1); }
.sm-page .rv.vis { opacity:1; transform:translateY(0); }
.sm-page .rv.d1 { transition-delay:.12s; }
.sm-page .rv.d2 { transition-delay:.24s; }
.sm-page .rv.d3 { transition-delay:.38s; }

/* ── SECTION ATOMS ── */
.sm-page .s-tag {
  font-size: clamp(.62rem,1.1vw,.72rem);
  font-weight: var(--fw-m);
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--c-accent);
  display: block;
  margin-bottom: 1rem;
}
.sm-page .s-tag--lt { color: rgba(255,255,255,.5); }

.sm-page .s-title {
  font-family: var(--serif);
  font-size: clamp(2rem,4vw,3.6rem);
  font-weight: var(--fw-l);
  line-height: 1.12;
  letter-spacing: -.01em;
  margin-bottom: 1.5rem;
}
.sm-page .s-title--lt { color: var(--c-white); }

.sm-page .s-sub {
  font-size: clamp(.88rem,1.5vw,1rem);
  font-weight: var(--fw-l);
  color: var(--c-text-mid);
  line-height: 1.8;
  max-width: 620px;
}
.sm-page .s-sub--lt { color: rgba(255,255,255,.68); }

/* ── THIN DECORATOR ── */
.sm-page .deco-line {
  display: inline-block;
  width: 40px;
  height: 1px;
  background: var(--c-accent);
  vertical-align: middle;
  margin-right: .75rem;
  opacity: .7;
}

/* ── BUTTONS ── */
.sm-page .btn {
  display: inline-flex; align-items: center; justify-content: center;
  font-family: var(--sans);
  font-size: clamp(.7rem,1.2vw,.8rem);
  font-weight: var(--fw-m);
  letter-spacing: .14em;
  text-transform: uppercase;
  padding: .9em 2.2em;
  border: 1px solid;
  cursor: pointer;
  transition: background var(--tr), color var(--tr), border-color var(--tr), transform var(--tr), box-shadow var(--tr);
  position: relative;
  overflow: hidden;
}
.sm-page .btn::after {
  content:'';
  position:absolute;
  inset:0;
  background: rgba(255,255,255,.06);
  opacity:0;
  transition: opacity var(--tr);
}
.sm-page .btn:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,.12); }
.sm-page .btn:hover::after { opacity:1; }

.sm-page .btn--wh   { background:var(--c-white); color:var(--c-text); border-color:var(--c-white); }
.sm-page .btn--wh:hover { background:transparent; color:var(--c-white); }
.sm-page .btn--owh  { background:transparent; color:var(--c-white); border-color:rgba(255,255,255,.55); }
.sm-page .btn--owh:hover { background:rgba(255,255,255,.1); border-color:var(--c-white); }
.sm-page .btn--dk   { background:var(--c-text); color:var(--c-white); border-color:var(--c-text); }
.sm-page .btn--dk:hover { background:transparent; color:var(--c-text); }
.sm-page .btn--odk  { background:transparent; color:var(--c-text); border-color:var(--c-border); }
.sm-page .btn--odk:hover { background:var(--c-text); color:var(--c-white); border-color:var(--c-text); }
.sm-page .btn--acc  { background:var(--c-accent); color:var(--c-white); border-color:var(--c-accent); }
.sm-page .btn--acc:hover { background:var(--c-accent-dk); border-color:var(--c-accent-dk); }

/* ── ARROW ICON ── */
.sm-page .btn-arrow {
  display:inline-flex; align-items:center; gap:.6rem;
}
.sm-page .btn-arrow svg { transition: transform var(--tr); }
.sm-page .btn:hover .btn-arrow svg { transform: translateX(4px); }

/* ── NOTE ── */
.sm-page .note {
  font-size: .7rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--c-text-soft);
  margin-top: .9rem;
}
.sm-page .note strong { color: var(--c-text-mid); }
.sm-page .note--lt { color: rgba(255,255,255,.38); }
.sm-page .note--lt strong { color: rgba(255,255,255,.6); }

/* ══════════════════════════════════
   NAV
══════════════════════════════════ */
.sm-nav {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 9999;
  height: 72px;
  display: flex;
  align-items: center;
  padding: 0 var(--pad);
  background: transparent;
  transition: background var(--tr-s), box-shadow var(--tr-s);
}
.sm-nav.scrolled {
  background: rgba(250,250,248,.96);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  box-shadow: 0 1px 0 var(--c-border);
}
.sm-nav.scrolled .sm-nav__logo-text,
.sm-nav.scrolled .sm-nav__link { color: var(--c-text); }
.sm-nav.scrolled .sm-nav__cta { color: var(--c-text); border-color: var(--c-text); }
.sm-nav.scrolled .sm-nav__burger span { background: var(--c-text); }

.sm-nav__inner {
  display: flex; align-items: center; justify-content: space-between;
  width: 100%; max-width: var(--max); margin: 0 auto;
}

.sm-nav__logo { display:flex; align-items:center; gap:.85rem; }

.sm-nav__logo-wrap {
  position: relative;
  height: 52px;
  width: auto;
  display: flex;
  align-items: center;
}
.sm-nav__logo-img-h {
  height: 52px!important;
  width: auto;
  display: block;
  object-fit: contain;
  object-position: left center;
  position: relative;
  opacity: 1;
  transition: opacity .35s ease;
  max-width: 220px;
}
.sm-nav__logo-img-dark {
  height: 52px!important;
  width: auto;
  display: block;
  object-fit: contain;
  object-position: left center;
  position: absolute;
  top: 0; left: 0;
  opacity: 0;
  transition: opacity .35s ease;
  max-width: 220px;
}
.sm-nav.scrolled .sm-nav__logo-img-h    { opacity: 0; }
.sm-nav.scrolled .sm-nav__logo-img-dark { opacity: 1; }

.sm-nav__logo-img-r {
  height: 38px;
  width: 38px;
  border-radius: 50%;
  object-fit: contain;
  display: block;
}
.sm-nav__logo-text {
  font-family: var(--sans);
  font-size: .76rem;
  font-weight: var(--fw-m);
  letter-spacing: .22em;
  color: var(--c-white);
  transition: color var(--tr);
  white-space: nowrap;
}

.sm-nav__links {
  display:flex; align-items:center; gap:2rem;
}
.sm-nav__link {
  font-size: .74rem;
  font-weight: var(--fw-m);
  letter-spacing: .12em;
  text-transform: uppercase;
  color: rgba(255,255,255,.82);
  transition: color var(--tr);
}
.sm-nav__link:hover { color: var(--c-white); }
.sm-nav__cta {
  font-size: .7rem;
  font-weight: var(--fw-m);
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(255,255,255,.88);
  border: 1px solid rgba(255,255,255,.4);
  padding: .5em 1.35em;
  transition: all var(--tr);
}
.sm-nav__cta:hover { background: rgba(255,255,255,.12); border-color: rgba(255,255,255,.8); }

.sm-nav__burger {
  display:none;
  flex-direction:column;
  gap:5px;
  padding:4px;
}
.sm-nav__burger span {
  display:block; width:24px; height:1.5px;
  background: var(--c-white);
  transition: all var(--tr);
}
.sm-nav__burger.open span:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
.sm-nav__burger.open span:nth-child(2) { opacity:0; }
.sm-nav__burger.open span:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }

@media(max-width:900px) {
  .sm-nav__burger { display:flex; }
  .sm-nav__links {
    position:fixed; top:72px; left:0; right:0;
    background: rgba(250,250,248,.98);
    backdrop-filter: blur(16px);
    flex-direction:column; gap:0;
    padding: 1.5rem 0 2.5rem;
    transform: translateY(-110%);
    opacity:0; pointer-events:none;
    transition: transform .42s cubic-bezier(.22,1,.36,1), opacity .35s ease;
    border-bottom: 1px solid var(--c-border);
    z-index: 9998;
  }
  .sm-nav__links.open { transform:translateY(0); opacity:1; pointer-events:all; }
  .sm-nav__link { color: var(--c-text); padding:.85rem 0; }
  .sm-nav__cta  { color: var(--c-text); border-color:var(--c-text); margin-top:.5rem; }
}

/* ══════════════════════════════════
   HERO
══════════════════════════════════ */
.sm-hero {
  position:relative;
  min-height: 100svh;
  display:flex; align-items:center;
  overflow:hidden;
}
.sm-hero__img {
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover; object-position:center center;
  background: var(--c-bg-dark);
  animation: heroZoom 1.6s cubic-bezier(.22,1,.36,1) forwards;
  transform-origin: center center;
}
@keyframes heroZoom {
  from { transform: scale(1.12); }
  to   { transform: scale(1); }
}
.sm-hero__ov {
  position:absolute; inset:0;
  background: linear-gradient(180deg,
    rgba(10,10,8,.68) 0%,
    rgba(10,10,8,.28) 45%,
    rgba(10,10,8,.72) 100%
  );
  z-index:1;
}
.sm-hero__grain {
  position:absolute; inset:0; z-index:2;
  opacity:.04;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");
  background-size: 200px 200px;
  pointer-events:none;
}
.sm-hero__content {
  position:relative; z-index:3;
  width:100%; max-width:var(--max);
  margin:0 auto;
  padding: 0 var(--pad);
  padding-top: 289px;
  text-align:center;
}
.sm-hero__eye,
.sm-hero__title,
.sm-hero__sub,
.sm-hero__acts,
.sm-hero .note--lt {
  opacity: 0;
  animation: heroFadeUp .9s cubic-bezier(.22,1,.36,1) forwards;
  transform: translateY(32px);
}
.sm-hero__eye       { animation-delay: .55s; }
.sm-hero__title     { animation-delay: .72s; }
.sm-hero__sub       { animation-delay: .90s; }
.sm-hero__acts      { animation-delay: 1.05s; }
.sm-hero .note--lt  { animation-delay: 1.15s; }

.sm-hero .rv.vis {
  opacity: 0;
  transform: translateY(32px);
}
@keyframes heroFadeUp {
  from { opacity:0; transform:translateY(32px); }
  to   { opacity:1; transform:translateY(0); }
}
.sm-hero__eye {
  font-size: clamp(.6rem,1vw,.7rem);
  font-weight: var(--fw-m);
  letter-spacing: .32em;
  text-transform: uppercase;
  color: var(--c-accent);
  margin-bottom: 1.75rem;
  display:flex; align-items:center; justify-content:center; gap:.7rem;
}
.sm-hero__eye::before,
.sm-hero__eye::after {
  content:'';
  display:block; width:28px; height:1px;
  background: var(--c-accent); opacity:.7;
}
.sm-hero__title {
  font-family: var(--serif);
  font-size: clamp(1.9rem,4.2vw,3.8rem);
  font-weight: var(--fw-l);
  color: var(--c-white);
  line-height: 1.12;
  letter-spacing: -.01em;
  margin-bottom: 1.6rem;
}
.sm-hero__sub {
  font-size: clamp(.88rem,1.5vw,1.05rem);
  font-weight: var(--fw-l);
  color: rgba(255,255,255,.72);
  max-width: 540px;
  margin: 0 auto 2.8rem;
  line-height: 1.8;
}
.sm-hero__acts {
  display:flex; flex-wrap:wrap; justify-content:center; gap:1rem;
  margin-bottom:1.25rem;
}
.sm-hero__scroll {
  position:absolute; bottom:2.5rem; left:50%;
  transform:translateX(-50%);
  z-index:3;
  display:flex; flex-direction:column; align-items:center; gap:.5rem;
}
.sm-hero__scroll-line {
  display:block; width:1px; height:48px;
  background:linear-gradient(180deg,transparent,rgba(255,255,255,.45));
  animation: scLine 2s ease-in-out infinite;
}
.sm-hero__scroll-arrow {
  color: rgba(255,255,255,.4);
  animation: scLine 2s ease-in-out infinite .25s;
}
@keyframes scLine {
  0%,100%{opacity:.25; transform:translateY(-4px);}
  50%{opacity:.85; transform:translateY(0);}
}

/* ══════════════════════════════════
   SOBRE
══════════════════════════════════ */
.sm-sobre {
  padding: var(--spy) var(--pad);
  background: var(--c-bg-alt);
  position:relative; overflow:hidden;
}
.sm-sobre::before {
  content:'';
  position:absolute; top:-120px; right:-120px;
  width:400px; height:400px;
  border-radius:50%;
  border: 1px solid rgba(139,158,147,.18);
  pointer-events:none;
}
.sm-sobre::after {
  content:'';
  position:absolute; bottom:-80px; left:-80px;
  width:260px; height:260px;
  border-radius:50%;
  border: 1px solid rgba(139,158,147,.12);
  pointer-events:none;
}
.sm-sobre__wrap { max-width:var(--max); margin:0 auto; }
.sm-sobre__kicker {
  font-size: clamp(.62rem,1vw,.7rem);
  font-weight:var(--fw-m);
  letter-spacing:.25em;
  text-transform:uppercase;
  color:var(--c-accent);
  margin-bottom:.5rem;
}
.sm-sobre__title {
  font-family:var(--serif);
  font-size:clamp(2.2rem,5vw,4.2rem);
  font-weight:var(--fw-l);
  letter-spacing:.04em;
  line-height:1.1;
  margin-bottom:3.2rem;
}
.sm-sobre__grid {
  display:grid; grid-template-columns:1fr 1fr;
  gap:clamp(2.5rem,5vw,5.5rem);
  align-items:start;
}
@media(max-width:900px){
  .sm-sobre__grid { grid-template-columns:1fr; }
  .sm-sobre__img-col { order:-1; }
}
.sm-sobre__text p {
  font-size:clamp(.9rem,1.3vw,1rem);
  color:var(--c-text-mid); line-height:1.82;
  margin-bottom:1.25rem;
}
.sm-sobre__text strong { color:var(--c-text); font-weight:var(--fw-m); }
.sm-sobre__list {
  margin:1.75rem 0 2rem;
  display:flex; flex-direction:column; gap:.7rem;
}
.sm-sobre__li {
  display:flex; align-items:flex-start; gap:.8rem;
  font-size:.92rem; color:var(--c-text-mid);
}
.sm-sobre__check {
  color:var(--c-accent); flex-shrink:0;
  font-size:.88rem; margin-top:.15rem;
}

.sm-sobre__img-col { position:relative; }
.sm-sobre__img {
  width:100%; aspect-ratio:3/4;
  object-fit:cover;
  background:var(--c-border);
}
.sm-sobre__corner {
  position:absolute; bottom:-14px; right:-14px;
  width:55%; aspect-ratio:1;
  border:1px solid var(--c-accent);
  z-index:0; pointer-events:none; opacity:.55;
}
.sm-sobre__dot {
  position:absolute; top:-18px; left:-18px;
  width:70px; height:70px;
  border-radius:50%;
  border:1px solid var(--c-accent);
  opacity:.3; pointer-events:none;
}

/* ══════════════════════════════════
   IMPACTO
══════════════════════════════════ */
.sm-impacto {
  position:relative;
  min-height:72vh;
  display:flex; align-items:center; justify-content:center;
  overflow:hidden;
  padding:var(--spy) var(--pad);
}
.sm-impacto__bg {
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover; object-position:center;
  background:var(--c-bg-dark);
}
.sm-impacto__ov {
  position:absolute; inset:0;
  background:rgba(10,10,8,.72);
}
.sm-impacto__geo {
  position:absolute; inset:0; z-index:1;
  pointer-events:none;
}
.sm-impacto__body {
  position:relative; z-index:2;
  max-width:780px; text-align:center;
}
.sm-impacto__title {
  font-family:var(--serif);
  font-size:clamp(2.4rem,6vw,5.2rem);
  font-weight:var(--fw-l);
  color:var(--c-white); line-height:1.1;
  letter-spacing:.02em;
  margin-bottom:1.75rem;
}
.sm-impacto__text {
  font-size:clamp(.9rem,1.5vw,1.05rem);
  color:rgba(255,255,255,.72);
  max-width:580px; margin:0 auto 2.75rem;
  line-height:1.82;
}
.sm-impacto__sep {
  display:flex; align-items:center; justify-content:center;
  gap:.75rem; margin-bottom:2.5rem;
  opacity:.45;
}
.sm-impacto__sep span {
  display:block; width:40px; height:1px;
  background:var(--c-white);
}
.sm-impacto__sep em {
  font-family:var(--serif); font-style:italic;
  font-size:.88rem; color:var(--c-white); letter-spacing:.05em;
}

/* ══════════════════════════════════
   VITALIDADE
══════════════════════════════════ */
.sm-vital {
  padding:var(--spy) var(--pad);
  background:var(--c-bg);
  position:relative;
}
.sm-vital::before {
  content:'';
  position:absolute; top:0; left:var(--pad); right:var(--pad);
  height:1px; background:var(--c-border);
}
.sm-vital__wrap { max-width:var(--max); margin:0 auto; }
.sm-vital__head { max-width:640px; margin-bottom:clamp(2.5rem,5vw,4.5rem); }

.sm-vital__grid {
  display:grid; grid-template-columns:repeat(4,1fr);
  border:1px solid var(--c-border);
}
@media(max-width:1024px){ .sm-vital__grid { grid-template-columns:repeat(2,1fr); } }
@media(max-width:540px)  { .sm-vital__grid { grid-template-columns:1fr; } }

.sm-vital__card {
  padding:clamp(1.5rem,2.5vw,2.2rem);
  border-right:1px solid var(--c-border);
  border-bottom:1px solid var(--c-border);
  transition:background var(--tr);
  position:relative;
}
.sm-vital__card:hover { background:var(--c-bg-alt); }
.sm-vital__card:nth-child(4n)   { border-right:none; }
@media(max-width:1024px){
  .sm-vital__card:nth-child(4n)  { border-right:1px solid var(--c-border); }
  .sm-vital__card:nth-child(2n)  { border-right:none; }
}
.sm-vital__num {
  font-family:var(--serif);
  font-size:2rem; font-weight:var(--fw-l);
  color:var(--c-border); line-height:1;
  display:block; margin-bottom:.75rem;
}
.sm-vital__card h3 {
  font-family:var(--serif);
  font-size:clamp(1rem,1.6vw,1.2rem);
  font-weight:var(--fw-m);
  color:var(--c-text); margin-bottom:.55rem; line-height:1.25;
}
.sm-vital__card p {
  font-size:.875rem; color:var(--c-text-mid); line-height:1.72;
}

/* ══════════════════════════════════
   STEPS BANNER
══════════════════════════════════ */
.sm-steps {
  background:var(--c-bg-dark);
  padding:clamp(3rem,5vw,5rem) var(--pad);
  position:relative; overflow:hidden;
}
.sm-steps::before {
  content:'';
  position:absolute; top:-200px; right:-200px;
  width:500px; height:500px;
  border-radius:50%;
  border:1px solid rgba(139,158,147,.12);
  pointer-events:none;
}
.sm-steps__wrap {
  max-width:var(--max); margin:0 auto;
  display:flex; flex-direction:column; align-items:center; gap:3.5rem;
}
.sm-steps__head { text-align:center; }
.sm-steps__row {
  display:grid; grid-template-columns:repeat(3,1fr);
  gap:0; width:100%;
  position:relative;
}
@media(max-width:768px){ .sm-steps__row { grid-template-columns:1fr; } }

.sm-steps__row::before {
  content:'';
  position:absolute; top:28px; left:16.6%; right:16.6%;
  height:1px;
  background: linear-gradient(90deg,transparent,rgba(139,158,147,.45),transparent);
  z-index:0;
}
@media(max-width:768px){
  .sm-steps__row::before { display:none; }
}

.sm-step {
  display:flex; flex-direction:column; align-items:center;
  text-align:center; gap:1.25rem;
  padding:0 1.5rem;
  position:relative; z-index:1;
}
.sm-step__circle {
  width:56px; height:56px;
  border-radius:50%;
  border:1px solid rgba(139,158,147,.5);
  display:flex; align-items:center; justify-content:center;
  font-family:var(--serif);
  font-size:1.2rem; font-weight:var(--fw-l);
  color:var(--c-accent);
  background:var(--c-bg-dark);
  position:relative;
}
.sm-step__circle::before {
  content:'';
  position:absolute; inset:-5px;
  border-radius:50%;
  border:1px solid rgba(139,158,147,.18);
}
.sm-step__label {
  font-family:var(--sans);
  font-size:.68rem; font-weight:var(--fw-m);
  letter-spacing:.2em; text-transform:uppercase;
  color:var(--c-accent); margin-bottom:.35rem;
}
.sm-step__title {
  font-family:var(--serif);
  font-size:clamp(1.05rem,1.8vw,1.35rem);
  font-weight:var(--fw-l); color:var(--c-white);
  line-height:1.3; margin-bottom:.5rem;
}
.sm-step__text {
  font-size:.86rem; color:rgba(255,255,255,.55); line-height:1.75;
}
.sm-step__arrow {
  display:none;
}
@media(min-width:769px){
  .sm-step:not(:last-child) .sm-step__arrow {
    display:block;
    position:absolute; right:-20px; top:28px;
    transform:translateY(-50%);
    color:rgba(139,158,147,.5);
    font-size:1.1rem;
    z-index:2;
  }
}

/* ══════════════════════════════════
   TRATAMENTOS
══════════════════════════════════ */
.sm-trat {
  background:var(--c-bg-dark);
  padding:var(--spy) var(--pad);
  position:relative;
}
.sm-trat::before {
  content:'';
  position:absolute; top:0; left:0; right:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(139,158,147,.3),transparent);
}
.sm-trat__wrap { max-width:var(--max); margin:0 auto; }
.sm-trat__head { max-width:680px; margin-bottom:clamp(3rem,5vw,5.5rem); }

.sm-trat__item {
  display:grid; grid-template-columns:1fr 1fr;
  gap:clamp(2rem,4.5vw,5rem);
  align-items:center;
  padding:clamp(2.5rem,4vw,4.5rem) 0;
  border-bottom:1px solid rgba(255,255,255,.07);
}
.sm-trat__item:last-child { border-bottom:none; }
.sm-trat__item--rev { direction:rtl; }
.sm-trat__item--rev > * { direction:ltr; }
@media(max-width:768px){
  .sm-trat__item,.sm-trat__item--rev { grid-template-columns:1fr; direction:ltr; }
}

.sm-trat__img-wrap { position:relative; }
.sm-trat__img {
  width:100%; aspect-ratio:4/3;
  object-fit:cover;
  background:rgba(255,255,255,.06);
}
.sm-trat__img-deco {
  position:absolute; bottom:-10px; right:-10px;
  width:50%; aspect-ratio:1;
  border:1px solid rgba(139,158,147,.25);
  pointer-events:none; z-index:0;
}

.sm-trat__label {
  font-size:.68rem; font-weight:var(--fw-m);
  letter-spacing:.22em; text-transform:uppercase;
  color:var(--c-accent); display:block;
  margin-bottom:1rem;
}
.sm-trat__title {
  font-family:var(--serif);
  font-size:clamp(1.5rem,2.5vw,2.2rem);
  font-weight:var(--fw-l); color:var(--c-white);
  line-height:1.28; margin-bottom:1rem;
}
.sm-trat__desc {
  font-size:.9rem; color:rgba(255,255,255,.55);
  line-height:1.78; margin-bottom:1.35rem;
}
.sm-trat__list { display:flex; flex-direction:column; gap:.5rem; }
.sm-trat__list li {
  font-size:.875rem; color:rgba(255,255,255,.7);
  padding-left:1.1rem; position:relative; line-height:1.65;
}
.sm-trat__list li::before {
  content:'·';
  position:absolute; left:0; color:var(--c-accent);
  font-size:1.1rem; line-height:1.4;
}

/* ══════════════════════════════════
   LOCALIZAÇÃO
══════════════════════════════════ */
.sm-loc {
  padding:var(--spy) var(--pad);
  background:var(--c-bg-alt);
  position:relative; overflow:hidden;
}
.sm-loc::after {
  content:'';
  position:absolute; top:50%; right:-60px;
  width:220px; height:220px;
  border-radius:50%;
  border:1px solid rgba(139,158,147,.15);
  transform:translateY(-50%);
  pointer-events:none;
}
.sm-loc__wrap {
  max-width:var(--max); margin:0 auto;
  display:grid; grid-template-columns:1fr 1.6fr;
  gap:clamp(2.5rem,5vw,5rem);
  align-items:start;
}
@media(max-width:768px){ .sm-loc__wrap { grid-template-columns:1fr; } }

.sm-loc__text {
  font-size:1rem; color:var(--c-text-mid);
  line-height:1.82; margin-bottom:1.75rem;
}
.sm-loc__addr {
  margin-bottom:2rem;
  font-size:.9rem; color:var(--c-text-mid); line-height:1.75;
}
.sm-loc__addr strong { color:var(--c-text); font-weight:var(--fw-m); display:block; margin-bottom:.3rem; }

.sm-loc__map {
  width:100%; aspect-ratio:16/10;
  overflow:hidden;
  border:1px solid var(--c-border);
  position:relative;
}
.sm-loc__map iframe {
  width:100%; height:100%;
  display:block; border:none;
}

/* ══════════════════════════════════
   ACCORDEON
══════════════════════════════════ */
.sm-acc {
  background:var(--c-bg);
  padding:var(--spy) var(--pad);
}
.sm-acc__wrap { max-width:var(--max); margin:0 auto; }
.sm-acc__hd {
  text-align:center;
  max-width:600px; margin:0 auto clamp(2.5rem,4vw,4rem);
}

.sm-acc__item {
  border-bottom:1px solid var(--c-border);
}
.sm-acc__item:first-of-type { border-top:1px solid var(--c-border); }

.sm-acc__trigger {
  width:100%; display:flex; align-items:center;
  justify-content:space-between;
  padding:1.75rem 0;
  font-family:var(--serif);
  font-size:clamp(1.3rem,2.4vw,1.85rem);
  font-weight:var(--fw-l);
  color:var(--c-text);
  text-align:left; letter-spacing:-.01em;
  transition:color var(--tr);
  gap:1.5rem;
}
.sm-acc__trigger:hover { color:var(--c-accent-dk); }
.sm-acc__icon {
  font-size:1.4rem; font-weight:var(--fw-l);
  color:var(--c-accent); flex-shrink:0;
  transition:transform var(--tr);
  line-height:1;
}
.sm-acc__trigger[aria-expanded="true"] .sm-acc__icon { transform:rotate(45deg); }

.sm-acc__body {
  overflow:hidden; max-height:0;
  transition:max-height .6s cubic-bezier(.22,1,.36,1);
}
.sm-acc__body.open { max-height:6000px; }
.sm-acc__inner { padding-bottom:2.5rem; }

.sm-acc__split {
  display:grid; grid-template-columns:1fr 1fr;
  gap:clamp(2rem,4vw,4rem);
}
@media(max-width:768px){ .sm-acc__split { grid-template-columns:1fr; } }

.sm-acc__split-text p {
  font-size:.95rem; color:var(--c-text-mid);
  line-height:1.82; margin-bottom:1.15rem;
}
.sm-acc__split-text em { font-style:italic; color:var(--c-text); }
.sm-acc__split-img {
  width:100%; aspect-ratio:3/4;
  object-fit:cover;
  background:var(--c-border);
}

.sm-quote {
  border-left:2px solid var(--c-accent);
  padding:1rem 1.5rem;
  margin:2rem 0;
}
.sm-quote p {
  font-family:var(--serif);
  font-size:clamp(1rem,1.6vw,1.1rem);
  line-height:1.62; color:var(--c-text) !important;
  margin-bottom:.8rem !important;
}

.sm-proc__grid {
  display:grid; grid-template-columns:1fr 1fr;
  gap:clamp(1.2rem,2.5vw,2rem);
}
@media(max-width:768px){ .sm-proc__grid { grid-template-columns:1fr; } }

.sm-proc__card {
  display:flex; gap:1.1rem;
  padding:1.5rem;
  border:1px solid var(--c-border);
  align-items:flex-start;
  transition:border-color var(--tr), background var(--tr);
}

.sm-proc__card:hover { border-color:var(--c-accent); background:var(--c-bg-alt); }

.sm-proc__img {
  width:68px; height:68px; border-radius:50%;
  object-fit:cover; flex-shrink:0;
  background:var(--c-border);
}
.sm-proc__label {
  font-size:.67rem; font-weight:var(--fw-m);
  letter-spacing:.15em; text-transform:uppercase;
  color:var(--c-accent); display:block; margin-bottom:.5rem;
}
.sm-proc__body p {
  font-size:.87rem; color:var(--c-text-mid);
  line-height:1.72; margin-bottom:.55rem;
}
.sm-proc__body ul { margin:.4rem 0; display:flex; flex-direction:column; gap:.3rem; }
.sm-proc__body li {
  font-size:.84rem; color:var(--c-text-mid);
  padding-left:.9rem; position:relative; line-height:1.6;
}
.sm-proc__body li::before { content:'·'; position:absolute; left:0; color:var(--c-accent); }

.sm-prot__block { padding:2rem 0; }
.sm-prot__hd {
  display:grid; grid-template-columns:1fr 1fr;
  gap:2rem; align-items:start; margin-bottom:1.75rem;
}
@media(max-width:600px){ .sm-prot__hd { grid-template-columns:1fr; } }
.sm-prot__label {
  font-family:var(--serif);
  font-size:clamp(1.2rem,2vw,1.65rem);
  font-weight:var(--fw-l); color:var(--c-text);
  display:block; margin-bottom:.45rem;
}
.sm-prot__meta {
  font-size:.78rem; color:var(--c-accent); letter-spacing:.05em;
}
.sm-prot__img {
  width:100%; aspect-ratio:16/9;
  object-fit:cover; background:var(--c-border);
}
.sm-prot__block p {
  font-size:.95rem; color:var(--c-text-mid);
  line-height:1.82; margin-bottom:1rem;
}
.sm-prot__hl {
  border-left:2px solid var(--c-accent);
  padding:.75rem 1.5rem;
  margin:1.5rem 0;
  background:var(--c-bg-alt);
}
.sm-prot__hl p { color:var(--c-text) !important; margin-bottom:.2rem !important; }
.sm-prot__divider { width:50px; height:1px; background:var(--c-border); margin:1rem 0; }

.sm-ad__grid {
  display:grid; grid-template-columns:1fr 1fr;
  gap:1.5rem; margin-bottom:1.75rem;
}
@media(max-width:600px){ .sm-ad__grid { grid-template-columns:1fr; } }
.sm-ad__img { width:100%; aspect-ratio:4/5; object-fit:cover; background:var(--c-border); }
.sm-ad__disc {
  font-size:.78rem; color:var(--c-text-soft);
  line-height:1.72;
  border-top:1px solid var(--c-border);
  padding-top:1.25rem;
}

/* ══════════════════════════════════
   CTA FINAL
══════════════════════════════════ */
.sm-cta {
  background:var(--c-bg-darker);
  padding:var(--spy) var(--pad);
  text-align:center;
  position:relative; overflow:hidden;
}
.sm-cta::before {
  content:'';
  position:absolute; bottom:-100px; left:-100px;
  width:350px; height:350px; border-radius:50%;
  border:1px solid rgba(139,158,147,.1);
  pointer-events:none;
}
.sm-cta::after {
  content:'';
  position:absolute; top:-80px; right:-80px;
  width:260px; height:260px; border-radius:50%;
  border:1px solid rgba(139,158,147,.08);
  pointer-events:none;
}
.sm-cta__wrap {
  max-width:660px; margin:0 auto;
  position:relative; z-index:1;
  display:flex; flex-direction:column; align-items:center;
}
.sm-cta__title {
  font-family:var(--serif);
  font-size:clamp(2.2rem,5vw,4rem);
  font-weight:var(--fw-l);
  color:var(--c-white); line-height:1.18;
  letter-spacing:-.01em; margin-bottom:2.75rem;
}

/* ══════════════════════════════════
   FOOTER
══════════════════════════════════ */
.sm-footer {
  background:var(--c-bg-darker);
  border-top:1px solid rgba(255,255,255,.06);
  padding:clamp(3rem,5vw,5rem) var(--pad) 0;
}
.sm-footer__grid {
  max-width:var(--max); margin:0 auto;
  display:grid; grid-template-columns:2fr 1fr 1fr;
  gap:clamp(2rem,4vw,4rem);
  padding-bottom:clamp(2.5rem,4vw,4rem);
  border-bottom:1px solid rgba(255,255,255,.07);
}
@media(max-width:768px){ .sm-footer__grid { grid-template-columns:1fr; } }

.sm-footer__logo-img {
  height:52px!important; 
  width:auto;
  object-fit:contain;
  display:block; margin-bottom:1rem;
  background:rgba(255,255,255, 0);
  min-width:80px;
}
.sm-footer__name {
  font-family:var(--sans); font-size:.8rem;
  font-weight:var(--fw-m); letter-spacing:.22em;
  color:var(--c-white); margin-bottom:.25rem;
}
.sm-footer__tag {
  font-size:.72rem; color:var(--c-accent);
  letter-spacing:.12em; text-transform:uppercase;
  margin-bottom:1.25rem;
}
.sm-footer__desc {
  font-size:.84rem; color:rgba(255,255,255,.42);
  line-height:1.78; max-width:340px;
}
.sm-footer__hd {
  font-size:.68rem; font-weight:var(--fw-m);
  letter-spacing:.2em; text-transform:uppercase;
  color:rgba(255,255,255,.38); margin-bottom:1.25rem;
}
.sm-footer__nav { display:flex; flex-direction:column; gap:.7rem; }
.sm-footer__nav a {
  font-size:.87rem; color:rgba(255,255,255,.55);
  transition:color var(--tr);
}
.sm-footer__nav a:hover { color:var(--c-white); }
.sm-footer__contact p {
  font-size:.87rem; color:rgba(255,255,255,.55);
  margin-bottom:1.5rem; line-height:1.72;
}
.sm-footer__social { display:flex; gap:1rem; margin-top:1.5rem; }
.sm-footer__social a {
  color:rgba(255,255,255,.4);
  transition:color var(--tr);
}
.sm-footer__social a:hover { color:var(--c-white); }

.sm-footer__bot {
  max-width:var(--max); margin:0 auto;
  padding:1.5rem 0;
}
.sm-footer__bot p {
  font-size:.72rem; color:rgba(255,255,255,.22);
  letter-spacing:.06em;
}

/* ══════════════════════════════════
   WHATSAPP FLUTUANTE — NOVO
══════════════════════════════════ */
.sm-wa-float {
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  z-index: 99999;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: .65rem;
}

.sm-wa-float__btn {
  position: relative;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: #25D366;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 20px rgba(37,211,102,.35), 0 2px 8px rgba(0,0,0,.18);
  transition: transform .3s cubic-bezier(.22,1,.36,1), box-shadow .3s ease;
  cursor: pointer;
  text-decoration: none;
  border: none;
}
.sm-wa-float__btn:hover {
  transform: translateY(-3px) scale(1.06);
  box-shadow: 0 8px 28px rgba(37,211,102,.45), 0 4px 12px rgba(0,0,0,.2);
}
.sm-wa-float__btn svg {
  width: 28px;
  height: 28px;
  fill: #fff;
  flex-shrink: 0;
}

/* Anel pulsante */
.sm-wa-float__btn::before {
  content: '';
  position: absolute;
  inset: -4px;
  border-radius: 50%;
  border: 2px solid rgba(37,211,102,.55);
  animation: waPulse 2.4s ease-in-out infinite;
}
.sm-wa-float__btn::after {
  content: '';
  position: absolute;
  inset: -10px;
  border-radius: 50%;
  border: 1.5px solid rgba(37,211,102,.25);
  animation: waPulse 2.4s ease-in-out infinite .5s;
}
@keyframes waPulse {
  0%   { transform: scale(1);   opacity: .8; }
  60%  { transform: scale(1.18); opacity: 0; }
  100% { transform: scale(1.18); opacity: 0; }
}

/* Tooltip */
.sm-wa-float__tip {
  background: var(--c-bg-darker, #141412);
  color: rgba(255,255,255,.88);
  font-family: var(--sans, 'Jost', sans-serif);
  font-size: .7rem;
  font-weight: 500;
  letter-spacing: .08em;
  text-transform: uppercase;
  padding: .45em 1em;
  border-radius: 2px;
  white-space: nowrap;
  opacity: 0;
  transform: translateX(6px);
  transition: opacity .25s ease, transform .25s ease;
  pointer-events: none;
  border: 1px solid rgba(255,255,255,.08);
}
.sm-wa-float:hover .sm-wa-float__tip {
  opacity: 1;
  transform: translateX(0);
}

@media(max-width: 540px) {
  .sm-wa-float {
    bottom: 1.25rem;
    right: 1.25rem;
  }
  .sm-wa-float__tip { display: none; }
}

/* ══ PLACEHOLDER ══ */
.sm-page img[src=""] {
  background: #D8D5D0;
}

/* ══ ELEMENTOR RESET ══ */
.elementor-widget-html .elementor-widget-container,
.elementor-widget-container:has(> .sm-page) {
  padding: 0 !important;
  margin: 0 !important;
}

#sm-top,
.sm-page {
  margin: 0 !important;
  padding: 0 !important;
}

.sm-hero, .sm-sobre, .sm-impacto, .sm-vital,
.sm-steps, .sm-trat, .sm-loc, .sm-acc,
.sm-cta, .sm-footer {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
}

@media(max-width: 768px) {
  #sm-top .sm-hero__img {
    height: 100% !important;
  }
  .sm-hero__eye {
    display: none;
  }
  .sm-hero__content {
    padding-top: 182px
  }
  .sm-hero {
    min-height: 90svh;
    display: flex;
  }
}

/* BLINDAGEM DO ACORDEÃO: Remove fundo verde, borda preta e cantos ovais */
html body .sm-page .sm-acc__item .sm-acc__trigger,
html body .sm-page .sm-acc__item .sm-acc__trigger:hover,
html body .sm-page .sm-acc__item .sm-acc__trigger:focus,
html body .sm-page .sm-acc__item .sm-acc__trigger:active,
html body .sm-page .sm-acc__item .sm-acc__trigger:focus-visible {
    background: transparent !important;
    background-color: transparent !important;
    border-radius: 0 !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

/* Aplica a cor verde APENAS no texto e no '+' durante o HOVER */
html body .sm-page .sm-acc__item .sm-acc__trigger:hover,
html body .sm-page .sm-acc__item .sm-acc__trigger:hover .sm-acc__icon {
    color: var(--c-accent) !important;
}

/* Mantém a cor verde APENAS no texto e no '+' quando o acordeão estiver CLICADO (ABERTO) */
html body .sm-page .sm-acc__item .sm-acc__trigger[aria-expanded="true"],
html body .sm-page .sm-acc__item .sm-acc__trigger[aria-expanded="true"] .sm-acc__icon {
    color: var(--c-accent) !important;
}/* End custom CSS */