.elementor-1110 .elementor-element.elementor-element-1463ec2{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:wrap;--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-1110 .elementor-element.elementor-element-96950db{width:100%;max-width:100%;}.elementor-1110 .elementor-element.elementor-element-96950db > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1110 .elementor-element.elementor-element-96950db.elementor-element{--align-self:center;--flex-grow:1;--flex-shrink:0;}.elementor-1110 .elementor-element.elementor-element-55d2dd1{width:100%;max-width:100%;}.elementor-1110 .elementor-element.elementor-element-55d2dd1 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1110 .elementor-element.elementor-element-55d2dd1.elementor-element{--align-self:center;--flex-grow:1;--flex-shrink:0;}.elementor-1110 .elementor-element.elementor-element-7444573{width:100%;max-width:100%;}.elementor-1110 .elementor-element.elementor-element-7444573 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1110 .elementor-element.elementor-element-7444573.elementor-element{--align-self:center;--flex-grow:1;--flex-shrink:0;}.elementor-1110 .elementor-element.elementor-element-954c85e{width:100%;max-width:100%;}.elementor-1110 .elementor-element.elementor-element-954c85e > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1110 .elementor-element.elementor-element-954c85e.elementor-element{--align-self:center;--flex-grow:1;--flex-shrink:0;}.elementor-1110 .elementor-element.elementor-element-c0e52d8{width:100%;max-width:100%;}.elementor-1110 .elementor-element.elementor-element-c0e52d8 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1110 .elementor-element.elementor-element-c0e52d8.elementor-element{--align-self:center;--flex-grow:1;--flex-shrink:0;}.elementor-1110 .elementor-element.elementor-element-36442b1{width:100%;max-width:100%;}.elementor-1110 .elementor-element.elementor-element-36442b1 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1110 .elementor-element.elementor-element-36442b1.elementor-element{--align-self:center;--flex-grow:1;--flex-shrink:0;}.elementor-1110 .elementor-element.elementor-element-628092b{width:100%;max-width:100%;}.elementor-1110 .elementor-element.elementor-element-628092b > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1110 .elementor-element.elementor-element-628092b.elementor-element{--align-self:center;--flex-grow:1;--flex-shrink:0;}.elementor-1110 .elementor-element.elementor-element-e711be1{width:100%;max-width:100%;}.elementor-1110 .elementor-element.elementor-element-e711be1 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1110 .elementor-element.elementor-element-e711be1.elementor-element{--align-self:center;--flex-grow:1;--flex-shrink:0;}.elementor-1110 .elementor-element.elementor-element-b36f7eb{width:100%;max-width:100%;}.elementor-1110 .elementor-element.elementor-element-b36f7eb > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1110 .elementor-element.elementor-element-b36f7eb.elementor-element{--align-self:center;--flex-grow:1;--flex-shrink:0;}:root{--page-title-display:none;}body.elementor-page-1110{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}/* Start custom CSS *//* ================================================
   DRA. VANESSA SILVEIRA — CSS DESIGN TOKENS
   Cole em: Elementor > Configurações do Site > CSS Personalizado
   OU em Aparência > Personalizar > CSS Adicional
   ================================================ */

@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Outfit:wght@300;400;500;600;700&display=swap');

:root {
  /* === CORES PRIMÁRIAS === */
  --color-amber:        #E87A2F;
  --color-amber-light:  #F5A623;
  --color-amber-soft:   #FAC882;
  --color-amber-subtle: rgba(232, 122, 47, 0.08);

  /* === NEUTRAS QUENTES === */
  --color-cream:        #FDF8F3;
  --color-cream-dark:   #F5EDE4;
  --color-warm-gray:    #F0E8DF;

  /* === FRIAS DE CONTRASTE === */
  --color-ice:          #E8F0F2;
  --color-ice-deep:     #D4E4E8;

  /* === TEXTOS === */
  --color-text-primary:   #1A1A1A;
  --color-text-secondary: #5A5A5A;
  --color-text-muted:     #8A8A8A;
  --color-text-on-dark:   #FFFFFF;
  --color-text-on-amber:  #FFFFFF;

  /* === SEMÂNTICAS === */
  --color-success:      #4A9A7A;
  --color-surface-dark: #1E1E1E;

  /* === GRADIENTES === */
  --gradient-warm:   linear-gradient(135deg, #F5A623 0%, #E87A2F 50%, #D4613C 100%);
  --gradient-hero:   linear-gradient(180deg, #FDF8F3 0%, #FAE8D0 35%, #F5A623 70%, #E87A2F 100%);
  --gradient-subtle: linear-gradient(180deg, #FDF8F3 0%, #F5EDE4 100%);
  --gradient-ice:    linear-gradient(180deg, #E8F0F2 0%, #FDF8F3 100%);

  /* === TIPOGRAFIA === */
  --font-display:  'DM Serif Display', Georgia, serif;
  --font-body:     'Outfit', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

  /* Escala tipográfica — Perfect Fourth (1.333) */
  --text-xs:   0.75rem;
  --text-sm:   0.875rem;
  --text-base: 1rem;
  --text-lg:   1.125rem;
  --text-xl:   1.333rem;
  --text-2xl:  1.777rem;
  --text-3xl:  2.369rem;
  --text-4xl:  3.157rem;
  --text-5xl:  4.209rem;
  --text-hero: clamp(3.5rem, 8vw, 5.61rem);

  --leading-tight:  1.15;
  --leading-snug:   1.3;
  --leading-normal: 1.6;
  --leading-loose:  1.8;

  --tracking-tight:  -0.02em;
  --tracking-normal:  0;
  --tracking-wide:    0.05em;
  --tracking-wider:   0.1em;

  /* === ESPAÇAMENTO (8pt grid) === */
  --space-1:  0.25rem;
  --space-2:  0.5rem;
  --space-3:  0.75rem;
  --space-4:  1rem;
  --space-5:  1.5rem;
  --space-6:  2rem;
  --space-7:  2.5rem;
  --space-8:  3rem;
  --space-10: 4rem;
  --space-12: 5rem;
  --space-16: 7.5rem;
  --space-20: 10rem;

  /* === LAYOUT === */
  --max-width:      1200px;
  --max-width-text: 720px;
  --side-padding:   clamp(1.5rem, 5vw, 4rem);

  /* === BORDER RADIUS === */
  --radius-sm:   8px;
  --radius-md:   16px;
  --radius-lg:   20px;
  --radius-xl:   28px;
  --radius-full: 100px;

  /* === SOMBRAS === */
  --shadow-sm:   0 2px 8px rgba(0, 0, 0, 0.04);
  --shadow-md:   0 4px 16px rgba(0, 0, 0, 0.06);
  --shadow-lg:   0 8px 32px rgba(0, 0, 0, 0.08);
  --shadow-xl:   0 16px 48px rgba(0, 0, 0, 0.1);
  --shadow-glow: 0 0 40px rgba(232, 122, 47, 0.15);

  /* === TRANSIÇÕES === */
  --ease-out:   cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in:    cubic-bezier(0.7, 0, 1, 0.84);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --duration-fast:   150ms;
  --duration-normal: 300ms;
  --duration-slow:   500ms;
}

/* === RESET & BASE === */
.vs-section *,
.vs-section *::before,
.vs-section *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

.vs-section {
  font-family: var(--font-body);
  font-size: var(--text-base);
  line-height: var(--leading-normal);
  color: var(--color-text-primary);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.vs-section img {
  max-width: 100%;
  height: auto;
  display: block;
}

.vs-section a {
  color: var(--color-amber);
  text-decoration: none;
  transition: color var(--duration-fast) var(--ease-out);
}
.vs-section a:hover {
  color: var(--color-amber-light);
}

/* === CONTAINER === */
.vs-container {
  width: 100%;
  max-width: var(--max-width);
  margin: 0 auto;
  padding-left: var(--side-padding);
  padding-right: var(--side-padding);
}

.vs-container--text {
  max-width: var(--max-width-text);
}

/* === TIPOGRAFIA UTILITY === */
.vs-font-display {
  font-family: var(--font-display);
  font-weight: 400;
  letter-spacing: var(--tracking-tight);
  line-height: var(--leading-tight);
}

.vs-overline {
  font-family: var(--font-body);
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
  color: var(--color-amber);
}

/* === BOTÕES === */
.vs-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  font-family: var(--font-body);
  font-weight: 500;
  font-size: var(--text-base);
  letter-spacing: var(--tracking-wide);
  border: none;
  border-radius: var(--radius-full);
  cursor: pointer;
  transition: transform var(--duration-normal) var(--ease-spring),
              box-shadow var(--duration-normal) var(--ease-out),
              background var(--duration-fast) var(--ease-out);
  text-decoration: none;
  line-height: 1;
}

/* Primary buttons — force white text even on <a> tags */
.vs-btn--primary,
a.vs-btn--primary,
.vs-section a.vs-btn--primary {
  color: #FFFFFF !important;
  background: var(--color-amber);
  padding: 16px 36px;
}
.vs-btn--primary:hover,
a.vs-btn--primary:hover,
.vs-section a.vs-btn--primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(232, 122, 47, 0.35);
  color: #FFFFFF !important;
}

/* Secondary buttons — dark text/border */
.vs-btn--secondary,
a.vs-btn--secondary,
.vs-section a.vs-btn--secondary {
  color: var(--color-text-primary) !important;
  background: transparent;
  border: 1.5px solid var(--color-text-primary);
  padding: 14px 32px;
}
.vs-btn--secondary:hover,
a.vs-btn--secondary:hover,
.vs-section a.vs-btn--secondary:hover {
  background: var(--color-text-primary);
  color: var(--color-text-on-dark) !important;
}

.vs-btn--small {
  font-size: var(--text-sm);
  padding: 10px 24px;
}

/* === CARDS === */
.vs-card {
  background: rgba(255, 255, 255, 0.75);
  border: 1px solid rgba(232, 122, 47, 0.08);
  border-radius: var(--radius-lg);
  padding: var(--space-8);
  transition: transform var(--duration-normal) var(--ease-spring),
              box-shadow var(--duration-normal) var(--ease-out);
}
.vs-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-lg);
}

/* === ANIMAÇÕES DE SCROLL === */
.vs-reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity var(--duration-slow) var(--ease-out),
              transform var(--duration-slow) var(--ease-out);
}
.vs-reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* Stagger delays */
.vs-reveal[data-delay="1"] { transition-delay: 100ms; }
.vs-reveal[data-delay="2"] { transition-delay: 200ms; }
.vs-reveal[data-delay="3"] { transition-delay: 300ms; }
.vs-reveal[data-delay="4"] { transition-delay: 400ms; }

/* === REDUCED MOTION === */
@media (prefers-reduced-motion: reduce) {
  .vs-reveal {
    opacity: 1;
    transform: none;
    transition: none;
  }
  .vs-btn,
  .vs-card {
    transition: none;
  }
}/* End custom CSS */