/* ===== Landing page: Cerâmica Fria Criativa do Zero — Edição Cenários e Miniaturas ===== */
html { scroll-behavior: smooth; }
body { font-family: var(--vs-body-font); }
.lp-section-cream { background: var(--vs-theme-color7); }
.lp-section-soft { background: var(--vs-theme-color6); }
.lp-purple { background: var(--vs-theme-color1); color: #fff; }
.lp-center { text-align: center; }
.lp-cta-wrap { margin-top: 40px; text-align: center; }
.lp-safe { display: block; margin-top: 14px; font-size: 15px; font-weight: 600; color: var(--vs-body-color); }
.lp-safe i { color: var(--vs-theme-color4); margin-right: 6px; }
.lp-purple .lp-safe, .bg-title .lp-safe { color: rgba(255,255,255,.85); }

/* Header */
.lp-header .vs-header__logo a { display: inline-flex; align-items: center; gap: 10px; font-family: var(--vs-title-font); font-weight: 800; font-size: 26px; line-height: 1; color: var(--vs-theme-color1); }
.lp-header .vs-header__logo a i { color: var(--vs-theme-color2); font-size: 30px; }
.lp-header .vs-header__logo a small { display: block; font-size: 13px; font-weight: 600; color: var(--vs-body-color); letter-spacing: .5px; margin-top: 3px; }
.lp-header .sticky-active { padding: 14px 0; }
.lp-header .vs-btn { padding: 14px 30px; font-size: 16px; }
@media (max-width: 575px) {
  .lp-header .vs-header__logo a { font-size: 20px; }
  .lp-header .vs-header__logo a i { font-size: 22px; }
  .lp-header .vs-btn { padding: 12px 18px; font-size: 13px; }
}

/* Hero */
.lp-hero .vs-hero__content { padding: 190px 0 230px; }
.lp-hero .vs-hero__title--sub { font-size: 34px; text-transform: none; }
.lp-hero .vs-hero__title--main { font-size: clamp(2.2rem, 1.2rem + 2.6vw, 3.6rem); line-height: 1.1; text-transform: none; }
.lp-hero .vs-hero__desc, .lp-hero .lp-hero-proof { text-transform: none; }
.lp-hero .vs-hero__title--main .main-sub { white-space: nowrap; }
.lp-hero .vs-hero__title--main span { display: inline; font-size: inherit; }
.lp-hero .vs-hero__title--main .main-sub { font-size: inherit; display: inline; }
.lp-hero .vs-hero__title--main .lp-kicker { display: block; font-size: clamp(1.4rem, 1.1rem + 1vw, 2rem); color: var(--vs-theme-color2); margin-bottom: 4px; }
.lp-hero .vs-hero__desc { font-size: 20px; max-width: 540px; margin-bottom: 18px; color: var(--vs-title-color); font-weight: 500; }
.lp-hero .lp-hero-proof { font-size: 17px; max-width: 540px; margin-bottom: 34px; }
.lp-hero .lp-hero-actions .lp-safe { margin-top: 14px; }
@media (max-width: 1199px) { .lp-hero .vs-hero__content { padding: 180px 0 200px; } }
@media (max-width: 991px) {
  .lp-hero .vs-hero__content { padding: 150px 0 40px; text-align: center; }
  .lp-hero .vs-hero__desc, .lp-hero .lp-hero-proof { margin-left: auto; margin-right: auto; }
  .lp-hero .vs-hero__img-shape { position: relative !important; max-width: 420px; margin: 0 auto 120px; right: auto !important; top: auto !important; }
}
.lp-hero .vs-hero__img-shape img.main-img { width: 100%; height: 100%; object-fit: cover; }

/* Video */
.lp-video-frame { position: relative; max-width: 860px; margin: 40px auto 0; border-radius: 28px; overflow: hidden; border: 6px solid #fff; box-shadow: 0 20px 50px rgba(0,0,0,.35); aspect-ratio: 16 / 9; background: #000; }
.lp-video-frame img, .lp-video-frame iframe { width: 100%; height: 100%; object-fit: cover; border: 0; display: block; }
.lp-video-frame .lp-play { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; background: rgba(49,94,58,.30); }
.lp-video-frame .lp-play span { width: 92px; height: 92px; border-radius: 50%; background: var(--vs-theme-color2); color: #fff; display: flex; align-items: center; justify-content: center; font-size: 30px; padding-left: 6px; box-shadow: 0 0 0 12px rgba(169,104,75,.35); transition: transform .3s; }
.lp-video-frame:hover .lp-play span { transform: scale(1.08); }
.lp-video-title { font-family: var(--vs-title-font); color: #fff; font-weight: 700; font-size: clamp(1.5rem, 1.1rem + 1.6vw, 2.4rem); line-height: 1.25; max-width: 820px; margin: 0 auto; }

/* Quotes */
.lp-quote { background: #fff; border-radius: 24px; padding: 34px 30px 30px; height: 100%; position: relative; box-shadow: 0 10px 30px rgba(49,94,58,.10); border: 2px dashed rgba(169,104,75,.28); }
.lp-quote::before { content: "\201C"; position: absolute; top: -14px; left: 24px; font-family: "Montserrat", sans-serif; font-weight: 800; font-size: 80px; line-height: 1; color: var(--vs-theme-color2); }
.lp-quote p { margin: 14px 0 0; font-size: 19px; font-weight: 500; color: var(--vs-title-color); line-height: 1.55; }
.lp-about-text p { margin-bottom: 16px; }

/* Cards */
.lp-card { background: #fff; border-radius: 26px; padding: 34px 30px; height: 100%; box-shadow: 0 10px 30px rgba(49,94,58,.10); border: 2px solid transparent; transition: transform .3s, border-color .3s; display: flex; flex-direction: column; }
.lp-card:hover { transform: translateY(-6px); border-color: var(--vs-theme-color2); }
.lp-card__icon { width: 68px; height: 68px; border-radius: 22px; background: var(--vs-theme-color7); color: var(--vs-theme-color1); display: flex; align-items: center; justify-content: center; font-size: 28px; margin-bottom: 20px; }
.lp-card h3 { font-size: 24px; margin-bottom: 12px; color: var(--vs-title-color); }
.lp-card p { margin-bottom: 18px; font-size: 16px; }
.lp-card p:last-of-type { margin-bottom: 18px; }
.lp-check { margin-top: auto; display: inline-flex; align-items: center; gap: 8px; align-self: flex-start; background: rgba(113,135,53,.16); color: var(--vs-theme-color4); font-weight: 700; font-size: 14px; padding: 8px 16px; border-radius: 50px; text-transform: lowercase; }
.lp-purple .lp-card { color: var(--vs-body-color); }
.lp-badges { display: flex; justify-content: center; gap: 14px; flex-wrap: wrap; margin-top: 26px; }
.lp-badge { background: #fff; border: 2px dashed var(--vs-theme-color2); color: var(--vs-title-color); border-radius: 50px; padding: 10px 26px; font-weight: 800; font-family: var(--vs-title-font); font-size: 20px; }
.lp-badge b { color: var(--vs-theme-color1); }

/* 3 peças */
.lp-pieces { background: var(--vs-theme-color1); border-radius: 32px; padding: 44px 36px; color: #fff; }
.lp-pieces h3 { color: #fff; font-size: 30px; margin-bottom: 10px; }
.lp-pieces > .row > div > p { color: rgba(255,255,255,.9); }
.lp-piece { background: #fff; border-radius: 22px; overflow: hidden; height: 100%; }
.lp-piece img { width: 100%; display: block; aspect-ratio: 4/3; object-fit: cover; }
.lp-piece h4 { padding: 16px 18px; margin: 0; font-size: 20px; text-align: center; color: var(--vs-title-color); }
.lp-pieces .lp-check { background: #fff; }
@media (max-width: 575px) { .lp-pieces { padding: 32px 20px; } }

/* For you list */
.lp-for-list { list-style: none; padding: 0; margin: 28px 0 0; }
.lp-for-list li { display: flex; gap: 16px; align-items: flex-start; margin-bottom: 18px; font-size: 18px; color: var(--vs-title-color); font-weight: 500; line-height: 1.5; }
.lp-for-list li span { flex: 0 0 38px; height: 38px; border-radius: 50%; background: var(--vs-theme-color3); color: #fff; display: flex; align-items: center; justify-content: center; font-weight: 800; font-family: var(--vs-title-font); margin-top: 1px; }
.lp-for-title { font-size: clamp(1.9rem, 1.4rem + 1.6vw, 2.8rem); }
.lp-collage img { width: 100%; border-radius: 24px; object-fit: cover; display: block; }
.lp-collage .col-6:first-child img { margin-bottom: 24px; }
.lp-collage .col-6:last-child { padding-top: 48px; }

/* Resultados */
.lp-results h2, .lp-results .vs-title__sub { color: #fff; }
.lp-big { font-family: var(--vs-title-font); font-weight: 800; line-height: 1; font-size: clamp(3.5rem, 2rem + 6vw, 7rem); color: var(--vs-theme-color2); display: block; }
.lp-results .lp-lead { max-width: 760px; margin: 18px auto 0; font-size: 19px; color: rgba(255,255,255,.92); }
.lp-dep { border-radius: 22px; aspect-ratio: 4/5; overflow: hidden; border: 5px solid #fff; background: #fff; box-shadow: 0 12px 30px rgba(0,0,0,.25); }
.lp-dep img { width: 100%; display: block; object-fit: contain; padding: 5px 0;}
.lp-dep-wrap { margin-top: 44px; padding-bottom: 6px; }

/* Experiência */
.lp-exp-card { background: #fff; border-radius: 24px; padding: 28px 26px; height: 100%; display: flex; gap: 18px; align-items: flex-start; box-shadow: 0 10px 28px rgba(49,94,58,.10); }
.lp-exp-card .ic { flex: 0 0 56px; height: 56px; border-radius: 18px; background: var(--vs-theme-color2); color: #fff; display: flex; align-items: center; justify-content: center; font-size: 22px; }
.lp-exp-card h3 { font-size: 21px; margin-bottom: 8px; }
.lp-exp-card p { margin: 0 0 6px; font-size: 16px; line-height: 1.55; }
.lp-exp-card p:last-child { margin-bottom: 0; }
.lp-sub-lead { font-family: var(--vs-title-font); font-weight: 700; font-size: 22px; color: var(--vs-theme-color1); margin-top: 6px; text-align: center; }

/* Professora */
.lp-teacher-photo { position: relative; max-width: 460px; margin: 0 auto; }
.lp-teacher-photo img.main { width: 100%; border-radius: 36px; display: block; border: 8px solid #fff; box-shadow: 0 18px 40px rgba(49,94,58,.18); aspect-ratio: 8/9; object-fit: cover; }
.lp-teacher-photo .vs-about3--yoe { position: absolute; right: -10px; bottom: 28px; left: auto; }

/* Oferta */
.lp-offer { background: var(--vs-theme-color1); position: relative; overflow: hidden; }
.lp-offer::before, .lp-offer::after { content: ""; position: absolute; border-radius: 50%; background: rgba(255,255,255,.06); }
.lp-offer::before { width: 520px; height: 520px; top: -200px; left: -160px; }
.lp-offer::after { width: 420px; height: 420px; bottom: -180px; right: -120px; }
.lp-offer .container { position: relative; z-index: 2; }
.lp-offer .vs-title__main, .lp-offer .vs-title__sub { color: #fff; }
.lp-price-card { background: #fff; border-radius: 34px; padding: 44px 40px; max-width: 560px; margin: 36px auto 0; position: relative; box-shadow: 0 24px 60px rgba(0,0,0,.28); border: 3px dashed var(--vs-theme-color2); }
.lp-price-card h3 { font-size: 26px; text-align: center; margin-bottom: 22px; }
.lp-price-card ul { list-style: none; padding: 0; margin: 0 0 26px; }
.lp-price-card ul li { padding: 11px 0 11px 36px; position: relative; font-size: 17px; color: var(--vs-title-color); font-weight: 500; border-bottom: 1px dashed var(--vs-border-color); }
.lp-price-card ul li:last-child { border-bottom: 0; }
.lp-price-card ul li::before { content: "\f058"; font-family: "Font Awesome 6 Pro"; font-weight: 900; position: absolute; left: 0; top: 11px; color: var(--vs-theme-color4); font-size: 20px; }
.lp-discount { position: absolute; top: -22px; right: 24px; background: var(--vs-theme-color3); color: #fff; font-weight: 800; font-family: var(--vs-title-font); padding: 9px 20px; border-radius: 50px; font-size: 16px; transform: rotate(4deg); box-shadow: 0 6px 16px rgba(165,122,75,.4); }
.lp-prices { text-align: center; margin-bottom: 8px; }
.lp-from { font-size: 18px; color: var(--vs-body-color); }
.lp-from s { color: #999; }
.lp-now { display: block; font-family: var(--vs-title-font); font-weight: 800; color: var(--vs-theme-color1); font-size: clamp(2.6rem, 2rem + 2.4vw, 3.8rem); line-height: 1.1; margin-top: 4px; }
.lp-now small { font-size: .38em; font-weight: 700; color: var(--vs-title-color); }
.lp-inst { font-size: 20px; font-weight: 700; color: var(--vs-title-color); margin-top: 4px; }
.lp-secure { text-align: center; font-size: 15px; font-weight: 600; margin: 18px 0 22px; color: var(--vs-body-color); }
.lp-secure i { color: var(--vs-theme-color4); margin-right: 6px; }
.lp-price-card .vs-btn { width: 100%; justify-content: center; text-align: center; }
.lp-price-card .lp-safe { text-align: center; }
.lp-guarantee { max-width: 560px; margin: 26px auto 0; display: flex; gap: 18px; align-items: center; background: rgba(255,255,255,.12); border: 2px dashed rgba(255,255,255,.45); border-radius: 26px; padding: 22px 26px; color: #fff; }
.lp-guarantee .ic { flex: 0 0 64px; height: 64px; border-radius: 50%; background: var(--vs-theme-color2); display: flex; align-items: center; justify-content: center; font-size: 28px; color: #fff; }
.lp-guarantee h3 { color: #fff; font-size: 24px; margin: 0 0 4px; }
.lp-guarantee p { margin: 0; color: rgba(255,255,255,.92); font-size: 17px; }
@media (max-width: 575px) { .lp-price-card { padding: 38px 22px 30px; } .lp-guarantee { flex-direction: column; text-align: center; } }

/* FAQ */
.lp-faq .accordion-button { font-size: 19px; }
.lp-faq .accordion-body p { font-size: 17px; }

/* Final CTA */
.lp-final h2 { color: #fff; }
.lp-final p.lp-lead { color: rgba(255,255,255,.88); font-size: 20px; max-width: 640px; margin: 14px auto 0; }

/* Footer */
.lp-footer { background: var(--vs-title-color); color: rgba(255,255,255,.85); padding: 50px 0 36px; text-align: center; }
.lp-footer .lp-flogo { font-family: var(--vs-title-font); font-weight: 800; font-size: 26px; color: #fff; display: inline-flex; align-items: center; gap: 10px; }
.lp-footer .lp-flogo i { color: var(--vs-theme-color2); }
.lp-footer p { margin: 14px 0 0; font-size: 15px; color: rgba(255,255,255,.75); }
.lp-footer .lp-fsmall { font-size: 13px; opacity: .7; margin-top: 18px; }

/* Mobile CTA bar */
.lp-sticky-cta { display: none; }
@media (max-width: 767px) {
  .lp-sticky-cta { display: block; position: fixed; left: 0; right: 0; bottom: 0; z-index: 999; padding: 10px 14px calc(10px + env(safe-area-inset-bottom, 0px)); background: rgba(255,249,240,.97); box-shadow: 0 -6px 20px rgba(0,0,0,.12); transform: translateY(110%); transition: transform .3s; }
  .lp-sticky-cta.show { transform: translateY(0); }
  .lp-sticky-cta .vs-btn { width: 100%; justify-content: center; }
  .back-to-top { bottom: 90px; }
  body { padding-bottom: 0; }
}

/* overrides de especificidade do hero */
.vs-hero--style6.lp-hero .vs-hero__title--main span.main-sub { font-size: inherit !important; display: inline; white-space: normal; }
.vs-hero--style6.lp-hero .vs-hero__title--main span.lp-kicker { font-size: clamp(1.4rem, 1.1rem + 1vw, 2rem) !important; display: block; }

.lp-faq .accordion-button { text-transform: none; }
.lp-long-title { font-size: clamp(1.7rem, 1.2rem + 1.5vw, 2.4rem) !important; line-height: 1.25 !important; }
.lp-pieces + .row { margin-top: 24px; }
.lp-footer { border-top: 4px solid var(--vs-theme-color2); }
@media (max-width: 575px) { .lp-teacher-photo .vs-about3--yoe { right: 8px; } }

/* =====================================================================
   PALETA "COM AMOR, MARCELA"
   creme #F4E7D5 · pêssego #E8B59F · terracota #A9684B · caramelo #A57A4B
   verde folha #718735 · verde profundo #315E3A · azul céu #A9D4DF · off-white #FFF9F0
   ===================================================================== */
:root {
  --cream: #F4E7D5; --peach: #E8B59F; --terracotta: #A9684B; --caramel: #A57A4B;
  --leaf: #718735; --forest: #315E3A; --sky: #A9D4DF; --offwhite: #FFF9F0;

  --vs-theme-color1: var(--forest);      --vs-theme-color1-rgb: 49, 94, 58;
  --vs-theme-color2: var(--terracotta);  --vs-theme-color2-rgb: 169, 104, 75;
  --vs-theme-color3: var(--caramel);
  --vs-theme-color4: var(--leaf);
  --vs-theme-color5: var(--peach);
  --vs-theme-color6: var(--cream);
  --vs-theme-color7: var(--offwhite);
  --vs-theme-color8: var(--offwhite);
  --vs-title-color: var(--forest);       --vs-title-color-rgb: 49, 94, 58;
  --vs-body-color: #6F5236;              --vs-body-color-rgb: 111, 82, 54;
  --vs-smoke-color: var(--cream);
  --vs-border-color: rgba(165, 122, 75, .28);
  --vs-yellow-color: var(--peach);
  --vs-title-font: "Montserrat", "Segoe UI", Arial, sans-serif;
  --vs-body-font: "Montserrat", "Segoe UI", Arial, sans-serif;
}
body { background: var(--cream); color: var(--vs-body-color); }
h1, h2, h3, h4, h5, h6 { font-weight: 600; letter-spacing: -.2px; }
.vs-title__main { font-size: clamp(2.3rem, 1.7rem + 2.2vw, 3.5rem); line-height: 1.12; font-weight: 600; }
.vs-title__sub { font-family: var(--vs-body-font); text-transform: uppercase; letter-spacing: 3px; font-size: 14px; font-weight: 800; color: var(--terracotta); }
.lp-purple .vs-title__sub, .lp-offer .vs-title__sub { color: var(--peach); }
.lp-long-title { font-size: clamp(2rem, 1.5rem + 1.6vw, 2.9rem) !important; }

/* seções */
.lp-section-cream, .lp-section-soft { background: var(--offwhite); }
.lp-purple { background: var(--forest); }
.vs-video--area.bg-title, .lp-footer { background: var(--forest); }
.lp-final { background: var(--terracotta) !important; }
.lp-final .lp-safe { color: rgba(255,249,240,.9); }
.lp-footer { border-top: 4px solid var(--peach); }

/* botões: pílula sólida terracota, sentence case */
.vs-btn { font-family: var(--vs-body-font); text-transform: none; font-weight: 800; font-size: 17px; letter-spacing: .2px; background-color: var(--terracotta); color: var(--offwhite); box-shadow: 0 8px 18px rgba(169,104,75,.32); }
.vs-btn .vs-btn__border { display: none; }
.vs-btn > i { margin-left: 10px; font-size: .9em; transition: transform .3s; }
.vs-btn:hover > i { transform: translateX(4px); }
.vs-btn::before, .vs-btn::after { background: var(--forest); }
.vs-btn.btn-leaf { background-color: var(--leaf); box-shadow: 0 8px 18px rgba(113,135,53,.32); }
.vs-btn.btn-leaf::before, .vs-btn.btn-leaf::after { background: var(--forest); }
.vs-btn.btn-light { background-color: var(--offwhite); color: var(--terracotta); box-shadow: 0 8px 18px rgba(0,0,0,.18); }
.vs-btn.btn-light:hover { color: var(--offwhite); }
.vs-btn.btn-light::before, .vs-btn.btn-light::after { background: var(--forest); }
.lp-header .vs-btn { font-size: 15px; }
.lp-header .sticky-active.active { background: var(--offwhite) !important; box-shadow: 0 6px 20px rgba(49,94,58,.12); }

/* cabeçalho / rodapé / logo */
.lp-header .vs-header__logo a { color: var(--forest); font-family: var(--vs-title-font); font-weight: 700; font-size: 28px; letter-spacing: -.3px; }
.lp-header .vs-header__logo a img { height: 46px; width: auto; }
.lp-header .vs-header__logo a small { font-family: var(--vs-body-font); color: var(--caramel); font-weight: 700; font-size: 11px; letter-spacing: 2px; text-transform: uppercase; margin-top: 4px; }
.lp-footer .lp-flogo { font-family: var(--vs-title-font); font-weight: 700; font-size: 30px; color: var(--offwhite); }
.lp-footer .lp-flogo img { height: 52px; width: auto; }
.lp-footer, .lp-footer p { color: rgba(255,249,240,.85); }
@media (max-width: 575px) { .lp-header .vs-header__logo a { font-size: 21px; } .lp-header .vs-header__logo a img { height: 36px; } .lp-header .vs-header__logo a small { font-size: 9px; letter-spacing: 1.2px; } }

/* hero (estilo da referência: kicker em caixa-alta + título serifado) */
.lp-hero { background: var(--cream) !important; }
.lp-hero .vs-hero__title--sub, .vs-hero--style6.lp-hero .vs-hero__title--main span.lp-kicker { font-family: var(--vs-body-font); font-size: 14px !important; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: var(--caramel); margin: 0 0 14px; display: block; }
.vs-hero--style6.lp-hero .vs-hero__title--main span.lp-kicker { margin: 0 0 6px; }
.lp-hero .vs-hero__title--main { font-weight: 600; font-size: clamp(2.8rem, 1.6rem + 3.6vw, 4.8rem); line-height: 1.04; }
.vs-hero--style6.lp-hero .vs-hero__title--main span.main-sub { color: var(--terracotta); font-style: italic; }
.lp-hero .vs-hero__desc { font-family: var(--vs-title-font); font-size: 24px; font-weight: 500; color: var(--forest); line-height: 1.3; }
.lp-hero .lp-hero-proof { color: var(--vs-body-color); }
.lp-safe { color: var(--caramel); }
.lp-purple .lp-safe, .bg-title .lp-safe { color: rgba(255,249,240,.85); }

/* superfícies (cards) em off-white com borda suave */
.lp-card, .lp-exp-card, .lp-quote, .lp-piece, .lp-dep, .lp-price-card { background: #FFFDF8; }
.lp-card, .lp-exp-card { border: 1.5px solid rgba(165,122,75,.18); }
.lp-quote { border: 2px dashed rgba(169,104,75,.35); }
.lp-quote::before { color: var(--terracotta); }
.lp-quote p { font-family: var(--vs-title-font); font-size: 23px; font-weight: 500; color: var(--forest); line-height: 1.35; }
.lp-card h3, .lp-exp-card h3 { font-size: 27px; }
.lp-card__icon { background: rgba(232,181,159,.35); color: var(--terracotta); }
.lp-check { background: rgba(113,135,53,.14); color: var(--leaf); }
.lp-pieces .lp-check { background: var(--offwhite); color: var(--forest); }
.lp-pieces h3 { font-size: 36px; }
.lp-piece h4 { font-size: 24px; }
.lp-badge { border-color: var(--terracotta); background: #FFFDF8; }
.lp-badge b { color: var(--terracotta); }
.lp-for-list li span { background: var(--leaf); }
.lp-dep { border-color: var(--offwhite); }
.lp-teacher-photo img.main { border-color: var(--offwhite); box-shadow: 0 18px 40px rgba(49,94,58,.2); }
.lp-big { color: var(--peach); }
.lp-sub-lead { color: var(--terracotta); font-weight: 600; font-size: 28px; }
.lp-discount { background: var(--caramel); }
.lp-now { color: var(--forest); }
.lp-price-card { border-color: var(--terracotta); }
.lp-price-card ul li::before { color: var(--leaf); }
.lp-guarantee { background: rgba(255,249,240,.1); border-color: rgba(232,181,159,.6); }
.lp-guarantee .ic { background: var(--terracotta); }
.lp-offer::before, .lp-offer::after { background: rgba(255,249,240,.05); }
.lp-faq .accordion-item { border-color: rgba(165,122,75,.22); background: #FFFDF8; }
.lp-faq .accordion-button { font-family: var(--vs-title-font); font-size: 23px; font-weight: 600; }
.lp-faq .accordion-button:not(.collapsed) { color: var(--offwhite); }
.lp-video-frame { border-color: var(--offwhite); }
.lp-video-frame .lp-play span { background: var(--terracotta); box-shadow: 0 0 0 12px rgba(232,181,159,.4); }
.lp-secure i, .lp-safe i { color: var(--leaf); }
.lp-final .lp-safe i { color: var(--offwhite); }

/* ---------- ILUSTRAÇÕES DECORATIVAS ---------- */
main > section, .lp-footer { position: relative; }
main > section > .container { position: relative; z-index: 2; }
.deco { position: absolute; width: var(--w, 100px); height: auto; transform: rotate(var(--r, 0deg)); pointer-events: none; user-select: none; z-index: 1; filter: drop-shadow(0 6px 10px rgba(49,94,58,.10)); }
.deco.float { animation: lp-float 7s ease-in-out infinite; }
.deco.float.d2 { animation-duration: 9s; animation-delay: -3s; }
@keyframes lp-float { 0%,100% { transform: translateY(0) rotate(var(--r, 0deg)); } 50% { transform: translateY(-10px) rotate(calc(var(--r, 0deg) + 3deg)); } }
@media (prefers-reduced-motion: reduce) { .deco.float { animation: none; } }
@media (max-width: 991px) { .deco { width: calc(var(--w, 100px) * .72); } }
@media (max-width: 767px) { .deco { width: calc(var(--w, 100px) * .5); opacity: .85; } .deco.hide-sm { display: none; } }

/* onda azul como sublinhado dos títulos centralizados */
.lp-wave::after { content: ""; display: block; width: 84px; height: 24px; margin: 14px auto 0; background: url("../img/deco/onda.png") center / contain no-repeat; }

.lp-hero .vs-hero__title--sub { margin-bottom: 18px; line-height: 1.5; }
.lp-hero .vs-hero__title--main { padding-top: 4px; }
.lp-collage img { border: 6px solid var(--offwhite); box-shadow: 0 14px 30px rgba(49,94,58,.16); }
.lp-piece { box-shadow: 0 10px 24px rgba(0,0,0,.18); }
.lp-quote { background: var(--offwhite); }

/* ===== Montserrat em todos os textos ===== */
html, body, h1, h2, h3, h4, h5, h6, p, a, li, span, small, strong, button, input, .vs-btn, .accordion-button { font-family: "Montserrat", "Segoe UI", Arial, sans-serif; }
body { font-weight: 400; line-height: 1.7; }
h1, h2, h3, h4, h5, h6 { font-weight: 700; letter-spacing: -.4px; }
.vs-title__main { font-size: clamp(1.9rem, 1.4rem + 1.7vw, 2.8rem); line-height: 1.2; font-weight: 700; }
.lp-long-title { font-size: clamp(1.6rem, 1.25rem + 1.2vw, 2.3rem) !important; line-height: 1.25 !important; }
.lp-for-title { font-size: clamp(1.6rem, 1.25rem + 1.2vw, 2.3rem); }
.lp-hero .vs-hero__title--main { font-weight: 700; font-size: clamp(2.3rem, 1.4rem + 2.8vw, 3.9rem); line-height: 1.1; }
.vs-hero--style6.lp-hero .vs-hero__title--main span.main-sub { font-style: normal; font-weight: 700; }
.lp-hero .vs-hero__desc { font-family: "Montserrat", sans-serif; font-size: 19px; font-weight: 500; line-height: 1.5; }
.lp-hero .lp-hero-proof { font-size: 16px; }
.lp-hero .vs-hero__title--sub, .vs-hero--style6.lp-hero .vs-hero__title--main span.lp-kicker { font-size: 12px !important; letter-spacing: 2.5px; font-weight: 700; }
.vs-title__sub { font-size: 12px; letter-spacing: 2.5px; font-weight: 700; }
.vs-btn { font-weight: 700; font-size: 16px; }
.lp-header .vs-btn { font-size: 14px; }
.lp-header .vs-header__logo a { font-weight: 700; font-size: 20px; letter-spacing: -.3px; line-height: 1.1; }
.lp-header .vs-header__logo a small { font-size: 10px; letter-spacing: 2px; font-weight: 600; }
.lp-footer .lp-flogo { font-weight: 700; font-size: 22px; }
.lp-video-title { font-size: clamp(1.3rem, 1rem + 1.2vw, 2rem); font-weight: 600; line-height: 1.35; }
.lp-quote p { font-size: 17px; font-weight: 500; line-height: 1.55; }
.lp-card h3, .lp-exp-card h3 { font-size: 21px; font-weight: 700; }
.lp-card p, .lp-exp-card p { font-size: 15px; line-height: 1.65; }
.lp-pieces h3 { font-size: 28px; }
.lp-piece h4 { font-size: 18px; font-weight: 700; }
.lp-badge { font-family: "Montserrat", sans-serif; font-size: 17px; font-weight: 700; }
.lp-big { font-weight: 800; font-size: clamp(3rem, 1.8rem + 5vw, 6rem); letter-spacing: -2px; }
.lp-sub-lead { font-size: 22px; font-weight: 600; }
.lp-for-list li { font-size: 16px; font-weight: 500; }
.lp-results .lp-lead, .lp-final p.lp-lead { font-size: 17px; line-height: 1.7; }
.lp-price-card h3 { font-size: 22px; }
.lp-price-card ul li { font-size: 15px; }
.lp-now { font-weight: 800; font-size: clamp(2.3rem, 1.8rem + 2vw, 3.3rem); }
.lp-inst { font-size: 17px; }
.lp-guarantee h3 { font-size: 21px; }
.lp-guarantee p { font-size: 15px; }
.lp-faq .accordion-button { font-size: 17px; font-weight: 600; }
.lp-faq .accordion-body p { font-size: 15px; }
.vs-about3--yoe__number, .vs-about3--yoe__text { font-family: "Montserrat", sans-serif; }
.vs-title__main .lp-kicker { font-family: "Montserrat", sans-serif; }
@media (max-width: 575px) {
  .lp-header .vs-header__logo a { font-size: 16px; }
  .lp-header .vs-btn { font-size: 12px; }
  .lp-quote p { font-size: 16px; }
}

/* ===== Player vertical (9:16) ===== */
.lp-video-frame { width: 100%; max-width: 340px; aspect-ratio: 9 / 16; margin: 0 auto; border-radius: 32px; border: 6px solid var(--offwhite); background: #000; box-shadow: 0 24px 50px rgba(0,0,0,.35); position: relative; overflow: hidden; }
.lp-video-frame img, .lp-video-frame iframe, .lp-video-frame video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; border: 0; display: block; }
.lp-video-frame .lp-play span { width: 78px; height: 78px; font-size: 26px; }
.lp-video-title { max-width: 520px; margin: 0 auto 8px; }
.lp-cta-left { margin-top: 28px; }
@media (min-width: 992px) { .lp-video-title { margin-left: 0; font-size: clamp(1.6rem, 1.2rem + 1vw, 2.2rem); } .lp-cta-left { text-align: left; } .lp-video-frame { max-width: 360px; } }
@media (max-width: 575px) { .lp-video-frame { max-width: 300px; } }
