/* ============================================================
   Light Food Way — identidade visual oficial (PPTX)
   Cores: lima #8CC63F · verde-escuro #0C2E15 / #1C5A2B · laranja #F47A20
          faixa multicolor (vermelho/lima/azul/verde/amarelo) · creme #FBF4E4
   Fontes: Baloo 2 (títulos, arredondada) + Mulish (corpo)
   Estilo: alegre, arredondado, colorido. Sem vidro, sem 3D, sem escuro.
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Baloo+2:wght@500;600;700;800&family=Mulish:wght@400;500;600;700;800&display=swap');

:root{
  --lfw-lime:#8CC63F; --lfw-lime-dark:#6FA82C; --lfw-green:#1C5A2B; --lfw-green-deep:#0C2E15;
  --lfw-orange:#F47A20; --lfw-red:#E8392B; --lfw-blue:#1CA3DD; --lfw-yellow:#FFC51F;
  --lfw-cream:#FBF4E4; --lfw-ink:#0C2E15; --lfw-body:#4b5d50;
  --lfw-card-shadow:0 16px 38px -16px rgba(12,46,21,.18);
}

/* ---------- fundo creme + faixa multicolor no topo ---------- */
html{background:var(--lfw-cream) !important}
body{background:transparent !important}
body::before{content:"";position:fixed;top:0;left:0;right:0;height:6px;z-index:100001;pointer-events:none;
  background:linear-gradient(90deg,
    var(--lfw-red) 0 20%, var(--lfw-lime) 20% 40%, var(--lfw-blue) 40% 60%,
    var(--lfw-green) 60% 80%, var(--lfw-yellow) 80% 100%)}

/* ---------- tipografia da marca (força sobre os inline dos widgets) ---------- */
.elementor h1,.elementor h2,.elementor h3,.elementor h4,
.elementor .elementor-heading-title,
.elementor .elementor-icon-box-title,
.elementor .elementor-counter-number-wrapper,
.elementor .elementor-accordion .elementor-tab-title{
  font-family:'Baloo 2',cursive !important;font-weight:800 !important}
.elementor,.elementor p,.elementor li,.elementor .elementor-icon-box-description,
.elementor .elementor-button,.elementor .elementor-icon-list-text,
.elementor .elementor-tab-content,.elementor .elementor-counter-title{
  font-family:'Mulish',sans-serif !important}

/* ---------- header (pílula branca arredondada, sempre por cima) ---------- */
.lfw-header{position:fixed !important;top:0;left:0;right:0;z-index:100000 !important;pointer-events:none}
.lfw-header > .e-con-inner,.lfw-header .lfw-navbar{pointer-events:auto}
.lfw-navbar{background:#ffffff !important;border-radius:999px !important;
  box-shadow:0 10px 30px -12px rgba(12,46,21,.22) !important;transition:all .3s ease}
.lfw-navbar.lfw-shrink{box-shadow:0 8px 22px -10px rgba(12,46,21,.3) !important}
.lfw-navlink .elementor-heading-title{position:relative;transition:color .2s}
.lfw-navlink .elementor-heading-title::after{content:"";position:absolute;left:0;bottom:-4px;height:3px;width:0;
  background:var(--lfw-lime);border-radius:3px;transition:width .3s}
.lfw-navlink:hover .elementor-heading-title{color:var(--lfw-lime-dark) !important}
.lfw-navlink:hover .elementor-heading-title::after{width:100%}

/* ---------- cards brancos arredondados (re-skin do antigo .lfw-glass) ---------- */
.lfw-glass{background:#ffffff !important;border:none !important;backdrop-filter:none !important;
  box-shadow:var(--lfw-card-shadow) !important}
.lfw-tilt{transition:transform .25s ease,box-shadow .25s ease}
.lfw-tilt:hover{transform:translateY(-8px);box-shadow:0 26px 50px -20px rgba(12,46,21,.28) !important}

/* ícone dos icon-box em "selo" lima arredondado */
.lfw-glass .elementor-icon-box-icon .elementor-icon,
.lfw-glass .elementor-icon{background:rgba(140,198,63,.18);color:var(--lfw-green) !important;
  width:62px;height:62px;border-radius:18px;display:inline-flex;align-items:center;justify-content:center}

/* ---------- botões: pílulas sólidas arredondadas (sem 3D) ---------- */
.lfw-btn3d .elementor-button{background:var(--lfw-lime) !important;color:var(--lfw-green-deep) !important;
  border-radius:999px !important;font-weight:800 !important;box-shadow:0 8px 18px -8px rgba(140,198,63,.7);
  transition:transform .15s,background .2s,box-shadow .2s}
.lfw-btn3d .elementor-button:hover{background:var(--lfw-lime-dark) !important;transform:translateY(-2px);
  box-shadow:0 12px 24px -8px rgba(140,198,63,.8)}
.lfw-btn3d-green .elementor-button{background:var(--lfw-green) !important;color:#fff !important;
  border-radius:999px !important;font-weight:800 !important;box-shadow:0 8px 18px -8px rgba(12,46,21,.5);
  transition:transform .15s,background .2s}
.lfw-btn3d-green .elementor-button:hover{background:var(--lfw-green-deep) !important;transform:translateY(-2px)}
.lfw-btnglass .elementor-button{background:transparent !important;color:var(--lfw-green) !important;
  border:2px solid var(--lfw-green) !important;border-radius:999px !important;font-weight:800 !important;
  transition:transform .15s,background .2s,color .2s}
.lfw-btnglass .elementor-button:hover{background:var(--lfw-green) !important;color:#fff !important;transform:translateY(-2px)}

/* ---------- título de destaque (palavra-punch em lima) ---------- */
.lfw-gradtext .elementor-heading-title{color:var(--lfw-green-deep) !important}
.lfw-gradtext .elementor-heading-title b,.lfw-gradtext .elementor-heading-title strong{color:var(--lfw-lime-dark) !important}

/* ---------- badge lima ---------- */
.lfw-badge{background:rgba(140,198,63,.2) !important;border:none !important;border-radius:999px !important}

/* ---------- blob orgânico laranja (decorativo) ---------- */
.lfw-blob{background:var(--lfw-orange) !important;
  border-radius:42% 58% 63% 37% / 45% 38% 62% 55% !important;color:#fff !important}

/* ---------- cards flutuantes do hero ---------- */
.lfw-herovis{position:relative}
.lfw-float{position:absolute !important;z-index:3;background:#fff !important;box-shadow:var(--lfw-card-shadow) !important;
  backdrop-filter:none !important;border:none !important}
.lfw-fc1{top:6%;left:-4%} .lfw-fc2{bottom:8%;right:-3%}
@media(max-width:1024px){.lfw-float{display:none !important}}

/* ---------- 2 cards por linha (valores) ---------- */
.lfw-col2{box-sizing:border-box !important;flex-grow:0 !important;flex-shrink:0 !important;
  flex-basis:calc(50% - 11px) !important;width:calc(50% - 11px) !important;max-width:calc(50% - 11px) !important}
@media(max-width:767px){.lfw-col2{flex-basis:100% !important;width:100% !important;max-width:100% !important}}

/* ---------- carrossel marketplace (produtos) ---------- */
.lfw-carousel{position:relative}
.lfw-viewport{overflow-x:auto;overflow-y:hidden;cursor:grab;scrollbar-width:none;-ms-overflow-style:none;scroll-behavior:smooth}
.lfw-viewport::-webkit-scrollbar{display:none}
.lfw-viewport.lfw-grabbing{cursor:grabbing}
.lfw-track{padding:12px 6px 34px 6px !important}
.lfw-prodcard{flex:0 0 320px !important;max-width:320px;overflow:hidden;padding:0 !important}
@media(max-width:767px){.lfw-prodcard{flex-basis:80vw !important;max-width:80vw}}
.lfw-prodimg img{width:100%;height:200px;object-fit:cover;display:block}
.lfw-prodbody{padding:24px !important}
/* setas do carrossel */
.lfw-prev,.lfw-next{position:absolute !important;top:42%;transform:translateY(-50%);z-index:6}
.lfw-prev{left:-8px}.lfw-next{right:-8px}
.lfw-prev .elementor-button,.lfw-next .elementor-button{width:52px;height:52px;border-radius:50% !important;
  background:#fff !important;color:var(--lfw-green) !important;box-shadow:0 10px 24px -8px rgba(12,46,21,.35) !important;
  display:inline-flex;align-items:center;justify-content:center;padding:0 !important;transition:transform .15s,background .2s,color .2s}
.lfw-prev .elementor-button:hover,.lfw-next .elementor-button:hover{background:var(--lfw-lime) !important;color:var(--lfw-green-deep) !important;transform:scale(1.08)}
@media(max-width:767px){.lfw-prev,.lfw-next{display:none !important}}

/* ---------- reveal (à prova de falha) ---------- */
.lfw-js .lfw-reveal{opacity:0}
@media(prefers-reduced-motion:reduce){.lfw-js .lfw-reveal{opacity:1 !important}}

/* ============================================================
   Adições: parallax · SVG animado · onda · nav ativo · grids
   ============================================================ */

/* parallax (só dá dica de composição ao browser) */
.lfw-parallax{will-change:transform}

/* SVG que desenha (.lfw-draw): traço lima, sem preenchimento.
   Fallback sem JS = desenhado (offset 0). */
.lfw-draw{fill:none;stroke:var(--lfw-lime);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.lfw-draw-green{stroke:var(--lfw-green)}
.lfw-draw-orange{stroke:var(--lfw-orange)}

/* faixa multicolor em onda — divisor entre seções */
.lfw-svg-wave{display:block;width:100%;line-height:0;pointer-events:none;margin:0}
.lfw-svg-wave svg{display:block;width:100%;height:auto}

/* SVG decorativo genérico em bloco html (mascote, ícones) */
.lfw-svg-deco{display:inline-block;line-height:0}
.lfw-svg-deco svg{display:block;width:100%;height:auto;overflow:visible}

/* item de menu da página atual destacado */
.lfw-navlink.lfw-active .elementor-heading-title{color:var(--lfw-lime-dark) !important}
.lfw-navlink.lfw-active .elementor-heading-title::after{width:100%}

/* 3 por linha (grade de categorias / passos) */
.lfw-col3{box-sizing:border-box !important;flex-grow:0 !important;flex-shrink:0 !important;
  flex-basis:calc(33.333% - 16px) !important;width:calc(33.333% - 16px) !important;max-width:calc(33.333% - 16px) !important}
@media(max-width:1024px){.lfw-col3{flex-basis:calc(50% - 12px) !important;width:calc(50% - 12px) !important;max-width:calc(50% - 12px) !important}}
@media(max-width:767px){.lfw-col3{flex-basis:100% !important;width:100% !important;max-width:100% !important}}

/* 4 por linha (passos "como funciona") */
.lfw-col4{box-sizing:border-box !important;flex-grow:0 !important;flex-shrink:0 !important;
  flex-basis:calc(25% - 17px) !important;width:calc(25% - 17px) !important;max-width:calc(25% - 17px) !important}
@media(max-width:1024px){.lfw-col4{flex-basis:calc(50% - 12px) !important;width:calc(50% - 12px) !important;max-width:calc(50% - 12px) !important}}
@media(max-width:767px){.lfw-col4{flex-basis:100% !important;width:100% !important;max-width:100% !important}}

/* selo com ícone SVG que desenha */
.lfw-svgseal{width:74px;height:74px;background:rgba(140,198,63,.16);border-radius:20px;
  display:flex;align-items:center;justify-content:center;padding:15px}
.lfw-svgseal svg{width:100%;height:100%;overflow:visible}

/* galeria (mosaico de fotos) */
.lfw-gallery-item{overflow:hidden;border-radius:18px !important;box-shadow:var(--lfw-card-shadow) !important;padding:0 !important}
.lfw-gallery-item img{width:100% !important;height:240px;object-fit:cover;display:block;border-radius:18px;transition:transform .5s ease}
.lfw-gallery-item:hover img{transform:scale(1.07)}
@media(max-width:767px){.lfw-gallery-item img{height:200px}}

/* divisor com folha (linhas + folha que desenham) */
.lfw-leafdiv{width:100%;max-width:260px;margin:0 auto}
.lfw-leafdiv svg{display:block;width:100%;height:auto;overflow:visible}

/* card de categoria (home) — imagem topo + título sobreposto */
.lfw-catcard{overflow:hidden;position:relative;text-decoration:none}
.lfw-catcard .elementor-icon-box-icon{margin-bottom:10px}

/* card de passo numerado (como funciona) */
.lfw-step{position:relative}
.lfw-step .lfw-stepnum{position:absolute;top:-16px;left:24px;width:40px;height:40px;border-radius:50%;
  background:var(--lfw-lime);color:var(--lfw-green-deep);display:flex;align-items:center;justify-content:center;
  font-family:'Baloo 2',cursive;font-weight:800;font-size:18px;box-shadow:0 8px 18px -8px rgba(140,198,63,.7)}

/* barra de âncoras do cardápio (categorias) */
.lfw-anchornav{position:sticky;top:84px;z-index:90}
.lfw-anchornav .elementor-button{background:#fff !important;color:var(--lfw-green) !important;
  border:1px solid rgba(12,46,21,.10) !important;border-radius:999px !important;font-weight:700 !important;
  box-shadow:0 6px 16px -10px rgba(12,46,21,.25) !important;transition:background .2s,color .2s}
.lfw-anchornav .elementor-button:hover{background:var(--lfw-lime) !important;color:var(--lfw-green-deep) !important}

/* mapa embed ocupa o card todo */
.lfw-map iframe{display:block;width:100%;min-height:320px;border:0;border-radius:20px}

/* formulários nativos do Elementor com a cara da marca */
.elementor .elementor-form .elementor-field-group > label{font-family:'Mulish',sans-serif !important;color:var(--lfw-green) !important;font-weight:700 !important;margin-bottom:6px}
.elementor .elementor-form .elementor-field{border-radius:12px !important;border:1px solid rgba(12,46,21,.14) !important;background:#fff !important;padding:12px 14px !important;font-family:'Mulish',sans-serif !important}
.elementor .elementor-form .elementor-field:focus{border-color:var(--lfw-lime) !important;box-shadow:0 0 0 3px rgba(140,198,63,.25) !important}
.elementor .elementor-form .elementor-button{background:var(--lfw-lime) !important;color:var(--lfw-green-deep) !important;border-radius:999px !important;font-family:'Baloo 2',cursive !important;font-weight:800 !important;box-shadow:0 8px 18px -8px rgba(140,198,63,.7) !important;transition:transform .15s,background .2s}
.elementor .elementor-form .elementor-button:hover{background:var(--lfw-lime-dark) !important;transform:translateY(-2px)}
