:root{
  --emerald-deep:#0D4D3C;--emerald:#146C56;--emerald-soft:#1E8267;--gold:#C9A04E;--gold-light:#E4C77A;
  --ivory:#FAF8F3;--ivory-warm:#F3EEE2;--ink:#1F2620;--ink-soft:#4A5650;
  --line:rgba(13,77,60,.14);--line-gold:rgba(201,160,78,.4);--green-wpp:#25D366;
  --r-card:14px;--r-pill:50px;--f-disp:'Fraunces',serif;--f-body:'Manrope',sans-serif;
  --shadow:0 8px 30px rgba(13,77,60,.08);--shadow-hover:0 16px 48px rgba(13,77,60,.14);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--f-body);background:var(--ivory);color:var(--ink);line-height:1.6}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}

.topbar{background:var(--emerald-deep);color:var(--ivory);text-align:center;padding:10px 20px;font-size:.82rem;letter-spacing:.02em}
.topbar strong{color:var(--gold-light);font-weight:700}
nav.site-nav{position:sticky;top:0;z-index:100;background:rgba(250,248,243,.95);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav-inner{max-width:1180px;margin:auto;padding:0 20px;height:66px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.logo{font-family:var(--f-disp);font-size:1.4rem;font-weight:600;color:var(--emerald-deep)}
.logo em{font-style:italic;color:var(--gold)}
.nav-links{display:flex;gap:4px;list-style:none;align-items:center}
.nav-links a{font-size:.82rem;font-weight:600;color:var(--ink-soft);padding:8px 14px;border-radius:var(--r-pill);transition:color .2s,background .2s}
.nav-links a:hover{color:var(--emerald-deep);background:rgba(13,77,60,.06)}
.nav-links .nav-wpp{background:var(--green-wpp);color:#fff;font-weight:700}
.nav-links .nav-wpp:hover{background:#1da851;color:#fff}
@media(max-width:700px){.nav-links li:not(:last-child){display:none}}

.vl-hero{padding:56px 20px 34px;text-align:center;background:var(--ivory);position:relative;overflow:hidden}
.vl-hero h1{font-family:var(--f-disp);font-weight:600;font-size:clamp(1.9rem,4.2vw,3rem);line-height:1.12;color:var(--emerald-deep);margin-bottom:14px}
.vl-hero h1 em{font-style:italic;color:var(--gold);font-weight:500}
.vl-hero p{max-width:560px;margin:0 auto;color:var(--ink-soft);font-size:1rem}
.inner{max-width:1180px;margin:auto;padding:0 20px}

/* Barra de busca e filtros */
.vl-filtros{max-width:1180px;margin:0 auto;padding:10px 20px 6px}
.vl-form{display:grid;grid-template-columns:1.4fr 1fr auto;gap:10px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:12px;box-shadow:var(--shadow)}
.vl-form input,.vl-form select{font:inherit;font-size:.92rem;border:1.5px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--ivory);color:var(--ink);width:100%;outline:none}
.vl-form input:focus,.vl-form select:focus{border-color:var(--emerald)}
.vl-form button{font:inherit;font-weight:800;background:var(--emerald-deep);color:#fff;border:0;border-radius:12px;padding:12px 24px;cursor:pointer}
.vl-form button:hover{background:var(--emerald)}
@media(max-width:760px){.vl-form{grid-template-columns:1fr}}
.vl-chips{display:flex;gap:8px;overflow-x:auto;padding:14px 0 6px;scrollbar-width:thin}
.vl-chip{flex-shrink:0;font-size:.8rem;font-weight:700;border:1.5px solid var(--line);color:var(--emerald-deep);background:#fff;border-radius:var(--r-pill);padding:7px 14px;transition:background .2s,color .2s,border-color .2s}
.vl-chip:hover{border-color:var(--gold)}
.vl-chip.ativo{background:var(--emerald-deep);color:#fff;border-color:var(--emerald-deep)}
.vl-chip small{opacity:.7;font-weight:600;margin-left:4px}
.vl-resultado{max-width:1180px;margin:0 auto;padding:6px 20px 14px;display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;font-size:.86rem;color:var(--ink-soft)}
.vl-limpar{font-weight:700;color:var(--emerald)}

/* Cards */
.vl-grid{max-width:1180px;margin:0 auto;padding:0 20px 20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:22px}
.vl-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s;position:relative}
.vl-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:var(--line-gold)}
.vl-card-img{aspect-ratio:4/3;background:var(--ivory-warm);overflow:hidden}
.vl-card-img img{width:100%;height:100%;object-fit:cover}
.vl-card-body{padding:18px 18px 20px;display:flex;flex-direction:column;gap:8px;flex:1}
.vl-badges{display:flex;gap:6px;flex-wrap:wrap}
.vl-badge{font-size:.64rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:3px 10px;border-radius:var(--r-pill);background:rgba(13,77,60,.08);color:var(--emerald-deep)}
.vl-badge.dest{background:var(--gold);color:var(--emerald-deep)}
.vl-badge.novo{background:var(--emerald-deep);color:var(--gold-light)}
.vl-card h2{font-family:var(--f-disp);font-size:1.15rem;font-weight:600;color:var(--emerald-deep);line-height:1.25}
.vl-local{font-size:.78rem;color:var(--gold);font-weight:700}
.vl-card p{font-size:.86rem;color:var(--ink-soft);line-height:1.6;flex:1}
.vl-ver{margin-top:6px;font-size:.82rem;font-weight:800;color:var(--emerald)}
.vl-destaques{background:var(--ivory-warm);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0 14px;margin:10px 0 26px}
.vl-destaques h2.sec{max-width:1180px;margin:0 auto 16px;padding:0 20px;font-family:var(--f-disp);font-size:1.3rem;color:var(--emerald-deep)}
.vl-destaques h2.sec em{color:var(--gold)}
.vl-vazio{max-width:560px;margin:30px auto 50px;text-align:center;padding:30px 24px;background:#fff;border:1px dashed var(--line-gold);border-radius:var(--r-card)}
.vl-vazio h2{font-family:var(--f-disp);color:var(--emerald-deep);margin-bottom:8px}
.vl-vazio p{color:var(--ink-soft);margin-bottom:16px}
.vl-pag{display:flex;justify-content:center;gap:6px;padding:10px 20px 40px;flex-wrap:wrap}
.vl-pag a,.vl-pag span{min-width:40px;text-align:center;padding:9px 13px;border-radius:10px;border:1.5px solid var(--line);background:#fff;font-weight:700;font-size:.85rem;color:var(--emerald-deep)}
.vl-pag span.atual{background:var(--emerald-deep);color:#fff;border-color:var(--emerald-deep)}

.btn-gold,.btn-emerald,.btn-line,.btn-wpp{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:800;font-size:.92rem;padding:13px 26px;border-radius:var(--r-pill);transition:background .2s,transform .2s}
.btn-gold{background:var(--gold);color:var(--emerald-deep)}.btn-gold:hover{background:var(--gold-light);transform:translateY(-2px)}
.btn-emerald{background:var(--emerald-deep);color:#fff}.btn-emerald:hover{background:var(--emerald);transform:translateY(-2px)}
.btn-line{border:1.5px solid var(--emerald-deep);color:var(--emerald-deep)}.btn-line:hover{background:var(--emerald-deep);color:#fff}
.btn-wpp{background:var(--green-wpp);color:#fff}.btn-wpp:hover{background:#1da851;transform:translateY(-2px)}

/* Página da empresa */
.emp-hero{max-width:980px;margin:26px auto 0;padding:0 20px}
.emp-cover{border-radius:20px;overflow:hidden;aspect-ratio:16/8;background:var(--ivory-warm);box-shadow:var(--shadow)}
.emp-cover img{width:100%;height:100%;object-fit:cover}
.emp-head{max-width:820px;margin:26px auto 0;padding:0 20px}
.emp-head h1{font-family:var(--f-disp);font-size:clamp(1.8rem,4vw,2.6rem);line-height:1.12;color:var(--emerald-deep);margin:8px 0 6px}
.emp-sub{color:var(--gold);font-weight:700;font-size:.9rem}
.emp-lead{margin-top:14px;font-size:1.08rem;color:var(--ink-soft);line-height:1.75}
.emp-acoes{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.emp-corpo{max-width:820px;margin:30px auto 0;padding:0 20px}
.art-text{font-size:1rem;color:#2f3a34;line-height:1.85;margin-bottom:1.1em}
.art-h2{font-family:var(--f-disp);font-size:1.5rem;color:var(--emerald-deep);margin:1.6em 0 .5em;line-height:1.2}
.emp-corpo ul,.emp-corpo ol{margin:0 0 1.1em;padding-left:1.5em}.emp-corpo ul{list-style:disc}.emp-corpo ol{list-style:decimal}.emp-corpo li{margin-bottom:.4em;color:#2f3a34}
.emp-corpo a{color:var(--emerald);text-decoration:underline}
.art-img-full{width:100%;height:auto;border-radius:14px;margin:1.2em 0 .4em}
.art-img-caption{font-size:.8rem;color:var(--ink-soft);text-align:center;margin-bottom:1.2em}
.emp-ficha{max-width:820px;margin:34px auto 0;padding:0 20px}
.emp-ficha-box{background:#fff;border:1px solid var(--line);border-radius:var(--r-card);padding:22px 24px;display:grid;gap:12px}
.emp-ficha-box h2{font-family:var(--f-disp);font-size:1.15rem;color:var(--emerald-deep)}
.emp-ficha-box dl{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;font-size:.92rem}
.emp-ficha-box dt{font-weight:800;color:var(--emerald-deep)}
.emp-ficha-box dd{color:var(--ink-soft);overflow-wrap:anywhere}
.emp-ficha-box dd a{color:var(--emerald);text-decoration:underline}
.emp-aviso{max-width:820px;margin:20px auto 0;padding:0 20px;font-size:.78rem;color:var(--ink-soft)}
.emp-aviso a{color:var(--emerald);text-decoration:underline}
.emp-voltar{max-width:820px;margin:26px auto 0;padding:0 20px;font-weight:800;color:var(--emerald)}
.previa-faixa{background:#fff4d6;color:#7a5a00;text-align:center;padding:10px 16px;font-size:.86rem;font-weight:700}

/* Página "como funciona a ordem" */
.vl-texto{max-width:760px;margin:30px auto 60px;padding:0 20px}
.vl-texto h1{font-family:var(--f-disp);color:var(--emerald-deep);font-size:2rem;margin-bottom:14px}
.vl-texto h2{font-family:var(--f-disp);color:var(--emerald-deep);font-size:1.25rem;margin:26px 0 8px}
.vl-texto p,.vl-texto li{color:var(--ink-soft);margin-bottom:10px}
.vl-texto ol,.vl-texto ul{padding-left:1.4em}

.cta-final{background:linear-gradient(135deg,var(--emerald-deep) 0%,var(--emerald) 100%);padding:64px 20px;text-align:center;margin-top:30px}
.cta-final h2{font-family:var(--f-disp);font-weight:600;font-size:clamp(1.6rem,4vw,2.4rem);color:#fff;margin-bottom:12px;line-height:1.15}
.cta-final h2 em{font-style:italic;color:var(--gold-light)}
.cta-final p{color:rgba(255,255,255,.82);max-width:520px;margin:0 auto 26px}
footer.site-foot{background:var(--ink);color:rgba(255,255,255,.55);text-align:center;padding:30px 20px;font-size:.82rem}
footer.site-foot strong{color:var(--gold-light)}
footer.site-foot a{color:var(--gold-light);text-decoration:underline}
footer.site-foot p+p{margin-top:6px}
.wpp-float{position:fixed;bottom:24px;right:20px;z-index:999;width:58px;height:58px;background:var(--green-wpp);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 24px rgba(37,211,102,.4)}
.wpp-float svg{width:30px;height:30px;fill:#fff}
/* Modernização pública 2026 — compatível com o painel existente */
:root{--emerald-deep:#094e43;--gold:#bb8c36;--ivory:#faf8f3;--ink:#0a2827;--r-card:8px;--r-pill:7px}
.topbar{padding:5px 16px;font:13px var(--f-disp)}.nav-inner{max-width:1220px;height:65px}.logo{font-size:31px}.nav-links .nav-wpp{background:var(--emerald-deep)}.nav-links .nav-wpp:hover{background:var(--emerald)}.menu-toggle{display:none;font:24px var(--f-body);color:var(--emerald-deep);background:transparent;border:1px solid var(--line);padding:2px 10px;border-radius:5px}.vl-hero{padding:55px max(24px,calc((100vw - 1180px)/2)) 120px;text-align:left;min-height:360px;background:linear-gradient(90deg,rgba(250,248,243,.96),rgba(250,248,243,.82) 35%,rgba(250,248,243,0) 75%),url('/assets/local.webp') center 45%/cover}.vl-hero h1{font-size:clamp(36px,4.7vw,62px);line-height:1;letter-spacing:-.045em;max-width:720px;margin-bottom:20px;color:#0b2524}.vl-hero p{font:18px/1.5 var(--f-disp);max-width:570px;margin:0 0 8px;color:#17332e}.vl-initiative{font-size:12px;color:#4b5551}.vl-filtros{margin-top:-80px;position:relative;z-index:5;max-width:1220px;padding-bottom:22px}.vl-form{grid-template-columns:1.3fr 1fr 1fr .8fr;gap:8px;border-radius:9px;padding:13px;box-shadow:0 7px 30px #2b211e20}.vl-form input,.vl-form select{border-radius:5px;background:#fff;font-size:13px;min-width:0;height:48px}.vl-form button{border-radius:5px;font-size:14px}.vl-cities-note{font-size:11px;color:#314a40;margin:9px 5px 0}.vl-chips{padding-top:12px}.vl-chip{font-size:11px;padding:6px 12px}.vl-resultado{max-width:1220px;font-size:12px;padding-bottom:15px}.vl-grid{max-width:1220px;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.vl-card{border:0;box-shadow:0 3px 18px #2b211e0b}.vl-card-img{aspect-ratio:2.2;background:linear-gradient(135deg,#e9e3d5,#d6e4d8)}.vl-card-img:empty:after{content:'Lugares e Locais';height:100%;display:grid;place-items:center;font:italic 26px var(--f-disp);color:#395e51}.vl-card-body{padding:17px;gap:6px}.vl-card h2{font-size:23px;letter-spacing:-.035em;color:#0a2827}.vl-local{font-size:11px;color:#4f5953;font-weight:400}.vl-card p{font-size:13px;line-height:1.55}.vl-ver{font-size:12px;text-decoration:underline;text-underline-offset:3px}.vl-badge{font-size:9px;border-radius:4px;padding:3px 7px;text-transform:none;letter-spacing:0;font-weight:600}.vl-badge.dest{color:white;background:#a57825}.vl-badge.novo{background:var(--emerald-deep);color:white}.vl-destaques{background:transparent;border:0;margin:0 0 8px;padding:12px 0}.vl-destaques h2.sec{max-width:1220px;font-size:34px;letter-spacing:-.04em;margin-bottom:0;color:#0a2827}.vl-editorial{max-width:1220px;padding:0 20px;margin:1px auto 16px;font-size:12px;color:var(--ink-soft)}.vl-destaques .vl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vl-destaques .vl-card{flex-direction:row}.vl-destaques .vl-card-img{width:49%;flex-shrink:0;aspect-ratio:auto;min-height:220px}.vl-destaques .vl-card h2{font-size:23px}.vl-list-heading{max-width:1220px;padding:0 20px;margin:5px auto 15px;display:flex;align-items:center;justify-content:space-between;gap:15px}.vl-list-heading h2{font:600 32px var(--f-disp);letter-spacing:-.04em}.vl-list-heading a{font-size:11px;color:var(--emerald-deep);text-decoration:underline}.cta-final{max-width:1180px;margin:15px auto 30px;border-radius:8px;background:#eef0e8;padding:30px 24px;text-align:left;position:relative}.cta-final h2{font-size:28px;color:#0a2827;letter-spacing:-.03em}.cta-final p{margin:0 0 20px;max-width:680px;color:var(--ink-soft);font-size:13px}.cta-final .btn-gold{background:var(--emerald-deep);color:white;font-size:13px}.site-foot{background:var(--ivory)!important;color:var(--ink-soft)!important;border-top:1px solid var(--line);font-size:11px!important}.site-foot strong,.site-foot a{color:var(--emerald-deep)!important}.emp-cover{border-radius:10px}.emp-head h1{letter-spacing:-.045em}.emp-ficha-box{border-radius:8px}.vl-texto h1{letter-spacing:-.04em}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
@media(max-width:950px){.menu-toggle{display:block}.nav-inner{position:relative}.nav-links{display:none;position:absolute;top:65px;left:0;right:0;background:var(--ivory);padding:15px 20px;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}.nav-links.is-open{display:flex;flex-direction:column;align-items:stretch}.nav-links li{display:block!important}.nav-links a{display:block}.vl-destaques .vl-card{flex-direction:column}.vl-destaques .vl-card-img{width:100%;aspect-ratio:2;min-height:0}.vl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vl-form{grid-template-columns:1fr 1fr}.vl-hero{padding-left:24px}.cta-final{margin-left:20px;margin-right:20px}}
@media(max-width:600px){.nav-inner{height:60px;padding:0 18px}.nav-links{top:60px}.logo{font-size:27px}.vl-hero{min-height:360px;padding:35px 20px 135px;background-position:63% center;background-image:linear-gradient(90deg,rgba(250,248,243,.95),rgba(250,248,243,.62) 53%,rgba(250,248,243,.08)),url('/assets/local.webp')}.vl-hero h1{font-size:38px;max-width:340px}.vl-hero p{font-size:15px;max-width:270px}.vl-initiative{font-size:10px}.vl-filtros{margin-top:-110px;padding:0 18px 20px}.vl-form{grid-template-columns:1fr;padding:10px;gap:7px}.vl-form input,.vl-form select{height:45px;font-size:13px}.vl-cities-note{font-size:10px}.vl-chips{display:none}.vl-resultado{padding:0 18px 10px}.vl-grid,.vl-destaques .vl-grid{grid-template-columns:1fr;padding:0 18px 20px;gap:16px}.vl-destaques h2.sec{font-size:29px;padding:0 18px}.vl-editorial{padding:0 18px;font-size:11px}.vl-destaques .vl-card-img{aspect-ratio:1.8}.vl-list-heading{display:block;padding:0 18px}.vl-list-heading h2{font-size:28px}.vl-list-heading a{display:inline-block;margin-top:7px}.vl-grid:not(.vl-destaques .vl-grid) .vl-card{flex-direction:row}.vl-grid:not(.vl-destaques .vl-grid) .vl-card-img{width:34%;aspect-ratio:auto;min-height:155px}.vl-grid:not(.vl-destaques .vl-grid) .vl-card-body{padding:12px}.vl-card h2{font-size:21px}.vl-card p{font-size:12px}.vl-badges{gap:4px}.cta-final{padding:24px 20px;margin:5px 18px 25px}.cta-final h2{font-size:25px}.cta-final .btn-gold{width:100%}.emp-ficha-box dl{grid-template-columns:1fr}.emp-ficha-box dd{margin-bottom:8px}.emp-acoes>a{width:100%}.vl-texto h1{font-size:28px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.search-select{position:relative;min-width:0}.vl-form .select-trigger{display:block;width:100%;height:48px;text-align:left;font-size:13px;font-weight:400;background:white;color:var(--ink);border:1.5px solid var(--line);padding:10px 14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.select-popup{position:absolute;top:calc(100% + 6px);left:0;min-width:100%;width:280px;max-width:calc(100vw - 54px);background:white;padding:9px;box-shadow:0 8px 30px #212b2530;border:1px solid var(--line);border-radius:6px;z-index:20}.select-popup[hidden]{display:none}.select-choices{max-height:230px;overflow:auto;margin-top:6px}.vl-form .select-choice{display:block;text-align:left;width:100%;background:white;color:var(--ink);font-size:12px;font-weight:400;padding:10px 8px}.vl-form .select-choice:hover,.vl-form .select-choice[aria-pressed=true]{background:#e7eee8}.select-choices p{font-size:12px;padding:8px}.vl-form select[hidden]{display:none}@media(max-width:600px){.vl-form .select-trigger{height:45px}.select-popup{width:100%}}
.vl-hero{background-position:center 16%}@media(max-width:600px){.vl-hero{background-position:63% 17%}}

/* Identidade Lugares e Locais: marca legível em telas estreitas. */
.logo{white-space:nowrap;font-size:clamp(20px,2.4vw,29px)}
:focus-visible{outline:3px solid #a77821;outline-offset:4px}
@media(max-width:600px){.logo{font-size:23px}.nav-inner{gap:10px}.vl-hero p{max-width:280px}.vl-vazio{margin-left:18px;margin-right:18px}}

/* Vitrine na Mão: apresentação complementar após a chamada do catálogo. */
.vm-partner{background:#f0ebdf;padding:52px 24px;scroll-margin-top:90px}
.vm-partner-inner{max-width:1180px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:42px;align-items:center}
.vm-partner-art{min-width:0}.vm-partner-art img{display:block;width:100%;height:auto;border-radius:14px}
.vm-partner-copy{min-width:0}.vm-partner-eyebrow{font:800 10px var(--f-body);letter-spacing:.17em;text-transform:uppercase;color:var(--emerald-deep);margin:0 0 16px}
.vm-partner-copy h2{font:600 clamp(31px,3.4vw,44px)/1.12 var(--f-disp);letter-spacing:-.04em;color:var(--emerald-deep);margin:0 0 18px}
.vm-partner-copy h2 em{font-style:normal;color:#876320}.vm-partner-copy>p:not(.vm-partner-eyebrow){font-size:15px;line-height:1.8;color:var(--ink-soft);margin:0 0 18px}
.vm-partner-gift{border-left:3px solid var(--gold);padding:10px 14px;background:#faf8f3;border-radius:0 8px 8px 0;color:var(--emerald-deep);font-size:14px;margin:0 0 22px}
.vm-partner-actions{display:flex;gap:10px;flex-wrap:wrap}.vm-partner-actions a{font-size:12px;line-height:1.5;padding:13px 17px;text-align:center;white-space:normal}
@media(max-width:900px){.vm-partner-inner{gap:26px}.vm-partner-actions{flex-direction:column}.vm-partner-actions a{justify-content:center}}
@media(max-width:640px){.vm-partner{padding:32px 20px}.vm-partner-inner{grid-template-columns:1fr;gap:24px}.vm-partner-copy h2{font-size:34px}.vm-partner-actions a{width:100%}.vm-partner-art img{max-width:440px;margin:auto}}
