/* =========================================================
   eLav Lavanderia — identidade oficial
   Cores:  Verde #87C540 (R135 G197 B64 · C52 M0 Y99 K0)
           Azul  #2B2F5C (R43 G47 B92 · C94 M89 Y35 K28)
   Fontes: LENA (principal / títulos) · GOTHAM BOOK (apoio / textos)
   Regra: nenhuma outra cor. Tons claros/escuros são apenas as
   duas cores oficiais misturadas com branco ou preto.
   ========================================================= */
@font-face { font-family: "Lena"; src: local("Lena"), local("Lena Regular"), url("../assets/fonts/Lena.woff2") format("woff2"), url("../assets/fonts/Lena.woff") format("woff"), url("../assets/fonts/Lena.otf") format("opentype"); font-weight: 400 900; font-display: swap; }
@font-face { font-family: "Gotham Book"; src: local("Gotham Book"), local("Gotham-Book"), url("../assets/fonts/Gotham-Book.woff2") format("woff2"), url("../assets/fonts/Gotham-Book.woff") format("woff"), url("../assets/fonts/Gotham-Book.otf") format("opentype"); font-weight: 400; font-display: swap; }

:root {
  --green: #87C540;                                   /* oficial */
  --navy: #2B2F5C;                                    /* oficial */
  --green-light: color-mix(in srgb, #87C540 70%, #fff);
  --green-dark: color-mix(in srgb, #87C540 72%, #000);
  --navy-deep: color-mix(in srgb, #2B2F5C 80%, #000); /* fundo */
  --navy-900: color-mix(in srgb, #2B2F5C 62%, #000);
  --navy-700: color-mix(in srgb, #2B2F5C 82%, #fff);
  --bg: var(--navy-deep);
  --surface: rgba(255, 255, 255, .045);
  --surface-2: rgba(255, 255, 255, .08);
  --border: rgba(255, 255, 255, .1);
  --border-strong: rgba(255, 255, 255, .2);
  --text: #fff;
  --muted: rgba(255, 255, 255, .72);
  --grad: linear-gradient(100deg, var(--green) 0%, var(--green-light) 100%);
  --radius: 20px;
  --radius-sm: 12px;
  --shadow: 0 24px 60px -20px rgba(0, 0, 0, .55);
  --glow: 0 10px 40px -10px rgba(135, 197, 64, .6);
  --font: "Gotham Book", "Gotham", "Montserrat", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  --display: "Lena", "Montserrat", var(--font);
  --mono: var(--font);
  --nav-h: 76px;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: var(--nav-h); -webkit-text-size-adjust: 100%; }
body { margin: 0; font-family: var(--font); color: var(--text); background: var(--bg); line-height: 1.6; overflow-x: hidden; -webkit-font-smoothing: antialiased; }
img, svg { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, select { font: inherit; color: inherit; cursor: pointer; }
h1, h2, h3, h4 { font-family: var(--display); line-height: 1.1; margin: 0; letter-spacing: -.015em; }
p { margin: 0; }
.mono { font-family: var(--mono); }
.container { width: min(1200px, 100% - 32px); margin-inline: auto; }
.center { text-align: center; margin-top: 40px; }
.grad { color: var(--green); }
@supports (-webkit-background-clip: text) { .grad { background: var(--grad); -webkit-background-clip: text; background-clip: text; color: transparent; } }
:focus-visible { outline: 2px solid var(--green); outline-offset: 3px; border-radius: 6px; }

/* Fundo */
#bubbles { position: fixed; inset: 0; z-index: -1; pointer-events: none; }
.grid-bg { position: fixed; inset: 0; z-index: -2; pointer-events: none;
  background:
    radial-gradient(900px 600px at 90% -10%, rgba(135, 197, 64, .35), transparent 60%),
    radial-gradient(700px 500px at -10% 45%, rgba(135, 197, 64, .12), transparent 60%),
    radial-gradient(800px 600px at 50% 120%, rgba(43, 47, 92, .8), transparent 60%),
    var(--bg); }
.grid-bg::after { content: ""; position: absolute; inset: 0;
  background-image: linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px);
  background-size: 56px 56px; mask-image: radial-gradient(ellipse at 50% 20%, #000 20%, transparent 75%); -webkit-mask-image: radial-gradient(ellipse at 50% 20%, #000 20%, transparent 75%); }

/* Botões */
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 52px; padding: 0 26px; border-radius: 999px; border: 1px solid transparent; font-weight: 600; font-size: 15px; white-space: nowrap; transition: transform .2s, box-shadow .2s, background .2s, border-color .2s; }
.btn svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; flex: none; }
.btn--primary { background: var(--green); color: var(--navy-900); box-shadow: var(--glow); }
.btn--primary:hover { transform: translateY(-2px); background: var(--green-light); box-shadow: 0 16px 50px -10px rgba(135, 197, 64,.8); }
.btn--ghost { background: var(--surface); border-color: var(--border-strong); backdrop-filter: blur(10px); }
.btn--ghost:hover { border-color: var(--green); background: var(--surface-2); transform: translateY(-2px); }
.btn--dark { background: var(--navy-900); color: #fff; }
.btn--dark:hover { transform: translateY(-2px); background: var(--navy); }
.btn--sm { min-height: 42px; padding: 0 18px; font-size: 14px; }
.btn--block { width: 100%; }

/* Nav */
.nav { position: fixed; inset: 0 0 auto; z-index: 1000; height: var(--nav-h); transition: background .3s, border-color .3s; border-bottom: 1px solid transparent; }
.nav.is-scrolled { background: rgba(43, 47, 92, .96); backdrop-filter: blur(16px) saturate(140%); border-color: var(--border); }
.nav__inner { height: 100%; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.logo img { height: 54px; width: auto; }
.nav__links { display: flex; gap: 4px; }
.nav__links a { padding: 8px 13px; border-radius: 999px; color: var(--muted); font-size: 14px; font-weight: 500; transition: color .2s, background .2s; }
.nav__links a:hover, .nav__links a.is-active { color: #fff; background: var(--surface-2); }
.nav__cta { display: flex; align-items: center; gap: 12px; }
.nav__toggle { display: none; width: 44px; height: 44px; border-radius: 12px; background: var(--surface); border: 1px solid var(--border); position: relative; }
.nav__toggle span { position: absolute; left: 12px; right: 12px; height: 2px; background: #fff; border-radius: 2px; transition: transform .3s, top .3s; }
.nav__toggle span:first-child { top: 17px; } .nav__toggle span:last-child { top: 25px; }
.nav__toggle[aria-expanded="true"] span:first-child { top: 21px; transform: rotate(45deg); }
.nav__toggle[aria-expanded="true"] span:last-child { top: 21px; transform: rotate(-45deg); }

/* Hero */
.hero { padding: calc(var(--nav-h) + 56px) 0 64px; }
.hero__inner { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 56px; align-items: center; }
.tag { display: inline-flex; align-items: center; gap: 10px; padding: 8px 16px; border-radius: 999px; background: var(--surface); border: 1px solid var(--border); font-size: 13px; color: var(--muted); }
.tag b { color: #fff; font-weight: 600; }
.pulse { width: 8px; height: 8px; border-radius: 50%; background: var(--green); animation: pulse 2s infinite; flex: none; }
@keyframes pulse { 0% { box-shadow: 0 0 0 0 rgba(135, 197, 64, .6); } 70%, 100% { box-shadow: 0 0 0 10px rgba(135, 197, 64, 0); } }
.hero h1 { font-size: clamp(40px, 5.6vw, 72px); margin: 24px 0 22px; font-weight: 700; }
.hero__lead { font-size: clamp(17px, 1.5vw, 19px); color: var(--muted); max-width: 560px; }
.hero__lead b { color: #fff; }
.hero__price { display: inline-flex; flex-direction: column; margin-top: 32px; padding: 18px 24px; border-radius: 18px; border: 1px solid rgba(135, 197, 64,.4); background: linear-gradient(135deg, rgba(135, 197, 64,.14), rgba(135, 197, 64,.03)); }
.hero__price span { font-size: 12px; color: var(--green-light); text-transform: uppercase; letter-spacing: .06em; }
.hero__price strong { font-family: var(--display); font-size: clamp(36px, 4vw, 48px); line-height: 1.1; }
.hero__price sup { font-size: .5em; color: var(--green); }
.hero__actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 28px; }

/* Formulário */
.lead { padding: 32px; border-radius: 26px; background: rgba(43, 47, 92, .82); border: 1px solid var(--border-strong); box-shadow: var(--shadow); backdrop-filter: blur(18px); display: grid; gap: 14px; position: relative; }
.lead::before { content: ""; position: absolute; inset: -1px; border-radius: inherit; padding: 1px; background: linear-gradient(160deg, rgba(135, 197, 64,.7), transparent 40%); -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude; pointer-events: none; }
.lead__head { display: flex; gap: 16px; align-items: center; margin-bottom: 4px; }
.lead__head img { width: 46px; height: auto; flex: none; }
.lead__head h2 { font-size: 24px; line-height: 1.15; letter-spacing: -.01em; }
.lead__head .nw { display: inline-block; white-space: nowrap; }
@media (max-width: 480px) { .lead__head { gap: 12px; } .lead__head img { width: 38px; } .lead__head h2 { font-size: 20px; } }
.lead__head p { color: var(--muted); font-size: 14px; margin-top: 8px; text-wrap: balance; }
.lead__head b { color: var(--green-light); font-weight: 600; }
.row2 { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.field { position: relative; }
.field input { width: 100%; height: 56px; padding: 22px 16px 6px; border-radius: 14px; border: 1px solid var(--border); background: rgba(0, 0, 0, .2); color: #fff; font-size: 15px; outline: 0; transition: border-color .2s, box-shadow .2s; }
.field label { position: absolute; left: 17px; top: 17px; color: var(--muted); font-size: 15px; pointer-events: none; transition: top .2s, font-size .2s, color .2s; }
.field input:focus { border-color: var(--green); box-shadow: 0 0 0 4px rgba(135, 197, 64,.15); }
.field input:focus + label, .field input:not(:placeholder-shown) + label { top: 7px; font-size: 11px; color: var(--green-light); }
.field.is-error input { border-color: #fff; }
.field.is-flash input { animation: flash 1.2s ease; }
@keyframes flash { 0%, 100% { box-shadow: none; } 30% { box-shadow: 0 0 0 6px rgba(135, 197, 64,.45); } }
.pills { border: 0; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.pills legend { font-size: 13px; color: var(--muted); margin-bottom: 8px; padding: 0; }
.pills label { position: relative; }
.pills input { position: absolute; opacity: 0; inset: 0; cursor: pointer; margin: 0; }
.pills span { display: inline-block; padding: 8px 15px; border-radius: 999px; border: 1px solid var(--border); background: rgba(0, 0, 0, .2); font-size: 14px; transition: all .2s; }
.pills input:checked + span { background: rgba(135, 197, 64,.18); border-color: var(--green); color: var(--green-light); }
.pills input:focus-visible + span { outline: 2px solid var(--green); outline-offset: 2px; }
.pills.is-error span { border-color: #fff; }
.lead__msg { font-size: 14px; min-height: 1em; }
.lead__msg:empty { display: none; }
.lead__msg.ok { color: var(--green-light); } .lead__msg.err { color: #fff; }
.fine { font-size: 12px; color: rgba(255, 255, 255, .55); }

/* Números */
.stats { padding: 8px 0 40px; }
.stats__grid { display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid var(--border); border-radius: var(--radius); background: var(--surface); backdrop-filter: blur(12px); overflow: hidden; }
.stat { padding: 30px 28px; display: flex; flex-direction: column; gap: 6px; }
.stat + .stat { border-left: 1px solid var(--border); }
.stat__num { font-family: var(--display); font-size: clamp(36px, 4.2vw, 54px); font-weight: 700; line-height: 1; color: var(--green); display: inline-flex; align-items: baseline; gap: 4px; }
.stat__num small { font-size: .42em; }
.stat__label { color: var(--muted); font-size: 14px; }

/* Seções */
.section { padding: 110px 0; position: relative; }
.section--alt { background: linear-gradient(180deg, transparent, rgba(43, 47, 92, .55) 10%, rgba(43, 47, 92, .55) 90%, transparent); }
.section__head { max-width: 700px; margin-bottom: 52px; }
.section__head--center { margin-inline: auto; text-align: center; }
.eyebrow { display: inline-block; color: var(--green); font-size: 13px; letter-spacing: .04em; margin-bottom: 16px; }
.section__head h2 { font-size: clamp(32px, 4.4vw, 54px); }
.section__head p { margin-top: 18px; color: var(--muted); font-size: 18px; }
.section__head .btn { margin-top: 28px; }

/* Perks */
.perks { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.perk { padding: 32px; border-radius: var(--radius); background: var(--surface); border: 1px solid var(--border); position: relative; overflow: hidden; transition: transform .3s, border-color .3s; }
.perk:hover { transform: translateY(-6px); border-color: rgba(135, 197, 64,.5); }
.perk::after { content: ""; position: absolute; top: -40%; right: -30%; width: 240px; height: 240px; border-radius: 50%; background: radial-gradient(circle, rgba(135, 197, 64,.35), transparent 70%); pointer-events: none; }
.perk__icon { width: 54px; height: 54px; border-radius: 16px; display: grid; place-items: center; background: rgba(135, 197, 64,.14); border: 1px solid rgba(135, 197, 64,.35); margin-bottom: 22px; }
.perk__icon svg, .flow__icon svg { width: 26px; height: 26px; fill: none; stroke: var(--green); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.perk__big { display: block; font-family: var(--display); font-size: 42px; font-weight: 700; margin-bottom: 10px; color: #fff; line-height: 1; }
.perk__big small { font-size: .45em; color: var(--green); }
.perk h3 { font-size: 21px; margin-bottom: 8px; color: var(--green-light); }
.perk p { color: var(--muted); font-size: 15px; }

/* Mapa de unidades — estilo Google Maps */
.hero__client { display: inline-block; margin-top: 22px; font-size: 15px; color: var(--muted); }
.hero__client b { color: var(--green-light); font-weight: 600; }
.hero__client:hover b { text-decoration: underline; }
.nav__map { display: inline-flex; align-items: center; gap: 6px; }
.nav__map svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 2; }

.gmap { display: grid; grid-template-columns: 380px minmax(0, 1fr); height: 640px; border-radius: 24px; overflow: hidden; background: #fff; color: var(--navy); box-shadow: var(--shadow); border: 1px solid var(--border-strong); }
.gmap__panel { display: flex; flex-direction: column; min-height: 0; border-right: 1px solid rgba(43, 47, 92, .14); background: #fff; }
.gmap__search { display: flex; align-items: center; gap: 10px; margin: 14px 14px 10px; padding: 0 8px 0 16px; height: 50px; border-radius: 26px; background: #fff; box-shadow: 0 1px 2px rgba(43, 47, 92,.3), 0 2px 6px 2px rgba(43, 47, 92,.15); }
.gmap__search:focus-within { box-shadow: 0 1px 3px rgba(43, 47, 92,.3), 0 4px 8px 3px rgba(43, 47, 92,.15); }
.gmap__search svg { width: 20px; height: 20px; flex: none; fill: none; stroke: rgba(43, 47, 92, .7); stroke-width: 2; }
.gmap__search input { flex: 1; min-width: 0; height: 100%; border: 0; outline: 0; background: none; font-size: 16px; color: var(--navy); }
.gmap__search input::placeholder { color: rgba(43, 47, 92, .7); }
.gmap__search input::-webkit-search-cancel-button { display: none; }
.gmap__clear { width: 36px; height: 36px; border-radius: 50%; border: 0; background: none; color: rgba(43, 47, 92, .7); font-size: 15px; }
.gmap__clear:hover { background: rgba(43, 47, 92, .06); }
.gmap__tools { display: flex; gap: 8px; padding: 0 14px 10px; }
.gtool { display: inline-flex; align-items: center; gap: 6px; height: 34px; padding: 0 14px; border-radius: 17px; border: 1px solid rgba(43, 47, 92, .14); background: #fff; color: var(--navy); font-size: 13px; font-weight: 500; }
.gtool:hover { background: rgba(43, 47, 92, .06); }
.gtool svg { width: 16px; height: 16px; fill: none; stroke: var(--navy); stroke-width: 2; }
.gtool.is-on { background: rgba(43, 47, 92, .06); border-color: rgba(43, 47, 92, .06); color: var(--navy); }
select.gtool { flex: 1; min-width: 0; padding-right: 8px; }
.gmap__status { padding: 8px 18px; font-size: 13px; color: rgba(43, 47, 92, .7); border-bottom: 1px solid rgba(43, 47, 92, .14); }
.gmap__status b { color: var(--navy); }
.glist { list-style: none; margin: 0; padding: 0; overflow-y: auto; flex: 1; min-height: 0; scrollbar-width: thin; }
.gitem { display: flex; gap: 12px; padding: 14px 18px; border-bottom: 1px solid rgba(43, 47, 92, .14); cursor: pointer; transition: background .15s; }
.gitem:hover, .gitem.is-sel { background: rgba(43, 47, 92, .06); }
.gitem.is-sel { box-shadow: inset 4px 0 0 var(--navy); }
.gitem__pin { width: 20px; flex: none; padding-top: 2px; }
.gitem__pin img { width: 20px; height: auto; display: block; }
.gitem__body { flex: 1; min-width: 0; }
.gitem__title { font-size: 15px; font-weight: 500; color: var(--navy); line-height: 1.3; }
.gitem__meta { font-size: 13px; color: rgba(43, 47, 92, .7); margin-top: 2px; }
.gitem__meta .km { color: var(--navy); font-weight: 500; }
.gitem__actions { display: flex; gap: 6px; margin-top: 10px; flex-wrap: wrap; }
.gbtn { display: inline-flex; align-items: center; gap: 5px; height: 32px; padding: 0 12px; border-radius: 16px; border: 1px solid rgba(43, 47, 92, .14); background: #fff; color: var(--navy); font-size: 13px; font-weight: 500; }
.gbtn:hover { background: rgba(43, 47, 92, .06); }
.gbtn svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 2; }
.gbtn--route { background: var(--navy); border-color: var(--navy); color: #fff; }
.gbtn--route:hover { background: var(--navy); }
.gbtn--wa { color: var(--green-dark); }
.glist mark { background: rgba(135, 197, 64, .35); color: inherit; border-radius: 2px; }
.gempty { padding: 28px 22px; text-align: center; color: var(--navy); }
.gempty__icon { font-size: 34px; margin-bottom: 8px; }
.gempty h3 { font-family: var(--display); font-size: 20px; color: var(--navy); margin-bottom: 8px; }
.gempty p { font-size: 14px; color: rgba(43, 47, 92, .7); margin-bottom: 16px; }
.gempty .btn { min-height: 46px; }
.gempty--free { background: linear-gradient(180deg, rgba(135, 197, 64, .1), #fff); }
.gnote { margin: 12px 14px; padding: 14px; border-radius: 12px; background: rgba(135, 197, 64, .1); border: 1px solid rgba(135, 197, 64, .45); font-size: 13px; color: var(--navy); }
.gnote b { color: var(--navy); }
.gnote button { display: inline-block; margin-top: 6px; padding: 0; border: 0; background: none; color: var(--green-dark); font-weight: 600; font-size: 13px; }

.gmap__map { position: relative; min-height: 0; }
#map { position: absolute; inset: 0; background: #fff; }
.gmap__reset { position: absolute; top: 12px; right: 12px; z-index: 500; width: 40px; height: 40px; border-radius: 4px; display: grid; place-items: center; background: #fff; border: 0; box-shadow: 0 1px 4px rgba(0,0,0,.3); }
.gmap__reset:hover { background: rgba(43, 47, 92, .06); }
.gmap__reset svg { width: 18px; height: 18px; fill: none; stroke: rgba(43, 47, 92, .7); stroke-width: 2; }
.gmap__fallback[hidden] { display: none; }
.gmap__fallback { position: absolute; inset: 0; display: grid; place-items: center; color: rgba(43, 47, 92, .7); padding: 24px; text-align: center; }

/* Leaflet com aparência Google */
.leaflet-container { font-family: var(--font); }
.leaflet-bar { border: 0 !important; box-shadow: 0 1px 4px rgba(0,0,0,.3) !important; border-radius: 4px !important; }
.leaflet-bar a { color: var(--navy) !important; width: 40px !important; height: 40px !important; line-height: 40px !important; font-size: 20px !important; }
.leaflet-bar a:hover { color: var(--navy) !important; background: rgba(43, 47, 92, .06) !important; }
.leaflet-control-attribution { font-size: 10px; }
.gpin img, .gpin svg { width: 30px; height: 44px; transform-origin: 50% 100%; transition: transform .18s ease; filter: drop-shadow(0 2px 2px rgba(0,0,0,.3)); }
.gpin.is-hot img, .gpin.is-hot svg { transform: scale(1.3); }
.gpin.is-hot { z-index: 1000 !important; }
.gpin--me .me { width: 20px; height: 20px; border-radius: 50%; background: var(--green); border: 3px solid #fff; box-shadow: 0 0 0 8px rgba(135, 197, 64,.25), 0 1px 4px rgba(0,0,0,.4); }
.gcluster { display: grid; place-items: center; border-radius: 50%; background: rgba(135, 197, 64,.35); }
.gcluster span { display: grid; place-items: center; width: 74%; height: 74%; border-radius: 50%; background: var(--navy); color: #fff; font: 700 13px var(--display); border: 2px solid #fff; box-shadow: 0 1px 4px rgba(0,0,0,.35); }
.leaflet-popup-content-wrapper { border-radius: 8px; box-shadow: 0 2px 7px 1px rgba(0,0,0,.3); }
.leaflet-popup-content { margin: 14px 16px; min-width: 230px; color: var(--navy); font-size: 13px; line-height: 1.45; }
.pop__title { font-size: 16px; font-weight: 500; }
.pop__sub { color: rgba(43, 47, 92, .7); margin: 2px 0 6px; }
.pop__line { color: var(--navy); }
.pop__actions { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 10px; }
.leaflet-container a.gbtn { color: var(--navy); }
.leaflet-container a.gbtn--route { color: #fff; }
.leaflet-container a.gbtn--wa { color: var(--green-dark); }

/* Chips de estados */
.states { display: grid; grid-template-columns: 1fr auto; gap: 24px; margin-top: 18px; padding: 18px 22px; border-radius: 18px; background: var(--surface); border: 1px solid var(--border); align-items: start; }
.states__label { display: block; font-size: 13px; color: var(--muted); margin-bottom: 10px; }
.states__chips { display: flex; flex-wrap: wrap; gap: 6px; }
.states__chips button { display: inline-flex; gap: 6px; align-items: center; padding: 6px 11px; border-radius: 999px; border: 1px solid var(--border-strong); background: var(--surface); font-size: 13px; font-family: var(--mono); }
.states__chips button small { color: var(--green); font-size: 12px; }
.states__chips button:hover, .states__chips button.is-sel { border-color: var(--green); background: rgba(135, 197, 64,.15); }
.states__group--free button { border-style: dashed; border-color: rgba(135, 197, 64,.6); color: var(--green-light); }
.states__group--free { max-width: 300px; }

@media (max-width: 960px) {
  .gmap { grid-template-columns: 1fr; height: auto; }
  .gmap__panel { border-right: 0; border-bottom: 1px solid rgba(43, 47, 92, .14); }
  .glist { max-height: 340px; }
  .gmap__map { height: 400px; }
  .states { grid-template-columns: 1fr; }
  .states__group--free { max-width: none; }
}

/* Modelo */
.model { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, .75fr); gap: 56px; align-items: center; }
.services { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.svc { position: relative; padding: 22px 22px 20px; border-radius: 16px; background: var(--surface); border: 1px solid var(--border); transition: transform .3s, border-color .3s; }
.svc:hover { transform: translateY(-3px); border-color: rgba(135, 197, 64,.5); }
.svc__badge { display: inline-block; font-family: var(--mono); font-size: 10px; padding: 3px 9px; border-radius: 999px; border: 1px solid rgba(135, 197, 64,.45); color: var(--green-light); margin-bottom: 10px; }
.svc h3 { font-size: 18px; margin-bottom: 6px; }
.svc p { color: var(--muted); font-size: 14px; }

/* Máquina */
.model__visual { position: relative; display: grid; place-items: center; perspective: 1000px; padding: 20px; }
.machine { width: min(340px, 78vw); aspect-ratio: .82; border-radius: 34px; padding: 22px; background: linear-gradient(160deg, rgba(255,255,255,.16), rgba(255,255,255,.04)); border: 1px solid var(--border-strong); box-shadow: var(--shadow), inset 0 1px 0 rgba(255,255,255,.2); backdrop-filter: blur(20px); display: flex; flex-direction: column; gap: 18px; transform-style: preserve-3d; transition: transform .2s ease-out; }
.machine__top { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.machine__screen { display: flex; gap: 12px; padding: 8px 12px; border-radius: 10px; background: var(--navy-900); border: 1px solid var(--border); font-size: 11px; color: var(--green-light); text-shadow: 0 0 8px rgba(135, 197, 64,.8); }
.machine__leds { display: flex; gap: 8px; }
.machine__leds i { width: 10px; height: 10px; border-radius: 50%; background: var(--navy-700); }
.machine__leds i:nth-child(1) { background: var(--green); box-shadow: 0 0 10px var(--green); }
.machine__leds i:nth-child(2) { animation: blink 1.4s infinite; }
@keyframes blink { 50% { background: var(--green-light); box-shadow: 0 0 10px var(--green-light); } }
.machine__door { flex: 1; display: grid; place-items: center; }
.machine__glass { width: 88%; aspect-ratio: 1; border-radius: 50%; position: relative; overflow: hidden; background: radial-gradient(circle at 35% 30%, rgba(255,255,255,.2), transparent 40%), var(--navy-900); border: 10px solid rgba(255,255,255,.1); box-shadow: inset 0 0 40px rgba(0,0,0,.8), 0 0 0 2px var(--border-strong), 0 0 60px -10px rgba(135, 197, 64,.7); }
.machine__water { position: absolute; inset: 40% -20% -20%; background: linear-gradient(180deg, rgba(255, 255, 255,.6), rgba(135, 197, 64,.9)); border-radius: 42%; animation: slosh 4s ease-in-out infinite; }
@keyframes slosh { 0%, 100% { transform: rotate(-8deg) translateX(-4%); } 50% { transform: rotate(8deg) translateX(4%); } }
.machine__drum { position: absolute; inset: 0; animation: spin 4.5s linear infinite; }
.cloth { position: absolute; width: 36%; height: auto; filter: drop-shadow(0 4px 6px rgba(0, 0, 0, .35)); animation: tumble 1.8s ease-in-out infinite alternate; }
.cloth--shirt { top: 12%; left: 18%; }
.cloth--pants { bottom: 8%; left: 34%; width: 34%; animation-duration: 2.3s; animation-delay: -.6s; }
.cloth--sock { top: 30%; right: 8%; width: 24%; animation-duration: 1.5s; animation-delay: -1s; }
.cloth--towel { top: 46%; left: 6%; width: 32%; animation-duration: 2s; animation-delay: -1.4s; }
@keyframes tumble { from { transform: rotate(-22deg) scale(.94); } to { transform: rotate(26deg) scale(1.04) translateY(-6%); } }
@keyframes spin { to { transform: rotate(360deg); } }
.machine__foam i { position: absolute; bottom: -10%; border-radius: 50%; background: radial-gradient(circle at 30% 30%, rgba(255,255,255,.9), rgba(255,255,255,.15)); animation: rise 3.5s ease-in infinite; }
.machine__foam i:nth-child(1) { left: 20%; width: 14px; height: 14px; }
.machine__foam i:nth-child(2) { left: 45%; width: 9px; height: 9px; animation-delay: .6s; }
.machine__foam i:nth-child(3) { left: 70%; width: 18px; height: 18px; animation-delay: 1.2s; }
.machine__foam i:nth-child(4) { left: 32%; width: 11px; height: 11px; animation-delay: 1.8s; }
.machine__foam i:nth-child(5) { left: 58%; width: 7px; height: 7px; animation-delay: 2.4s; }
.machine__foam i:nth-child(6) { left: 80%; width: 10px; height: 10px; animation-delay: 3s; }
@keyframes rise { to { transform: translateY(-420%); opacity: 0; } }
.machine__progress { height: 6px; border-radius: 6px; background: var(--navy-900); overflow: hidden; }
.machine__progress span { display: block; height: 100%; width: 0; background: var(--grad); box-shadow: 0 0 12px var(--green); transition: width .5s linear; }
.chip { position: absolute; display: inline-flex; align-items: center; gap: 8px; padding: 9px 15px; border-radius: 999px; font-size: 13px; font-weight: 600; background: rgba(43, 47, 92,.9); border: 1px solid var(--border-strong); backdrop-filter: blur(12px); box-shadow: var(--shadow); animation: float 6s ease-in-out infinite; }
.chip__dot { width: 8px; height: 8px; border-radius: 50%; background: var(--green); box-shadow: 0 0 10px var(--green); }
.chip--a { top: 6%; left: 0; } .chip--b { top: 46%; right: 0; animation-delay: -2s; } .chip--c { bottom: 6%; left: 6%; animation-delay: -4s; }
@keyframes float { 50% { transform: translateY(-14px); } }


/* Processo animado: Higienização → Passadoria → Embalado */
.proc { width: min(360px, 86vw); margin-inline: auto; display: grid; gap: 18px; }
.proc__stages { position: relative; aspect-ratio: .86; }
.proc__stage { position: absolute; inset: 0; opacity: 0; transform: scale(.94); transition: opacity .5s ease, transform .5s ease; pointer-events: none; }
.proc__stage.is-active { opacity: 1; transform: none; }
.proc .machine, .pcard { position: absolute; inset: 0; width: auto; aspect-ratio: auto; }
.pcard { border-radius: 34px; background: linear-gradient(160deg, rgba(255,255,255,.16), rgba(255,255,255,.04)); border: 1px solid var(--border-strong); box-shadow: var(--shadow), inset 0 1px 0 rgba(255,255,255,.2); backdrop-filter: blur(20px); display: grid; place-items: center; overflow: hidden; }
.scene { width: 92%; height: auto; overflow: visible; }
.machine__screen .spinner { width: 12px; height: 12px; border-radius: 50%; border: 2px solid rgba(135, 197, 64,.3); border-top-color: var(--green-light); animation: spin .8s linear infinite; align-self: center; }

/* Selo de etapa concluída */
.pbadge { position: absolute; top: -14px; right: -10px; z-index: 2; padding: 9px 16px; border-radius: 999px; background: var(--green); color: var(--navy-900); font-weight: 700; font-size: 14px; box-shadow: 0 10px 30px -8px rgba(135, 197, 64,.8); opacity: 0; transform: scale(.4) rotate(-8deg); }
.is-active .pbadge { animation: pop .5s cubic-bezier(.3,1.6,.5,1) forwards; animation-delay: 2.6s; }
@keyframes pop { to { opacity: 1; transform: none; } }

/* Brilhos */
.sparkles i { position: absolute; color: #fff; font-style: normal; opacity: 0; text-shadow: 0 0 10px rgba(255,255,255,.9); }
.sparkles i:nth-child(1) { top: 18%; left: 16%; font-size: 22px; }
.sparkles i:nth-child(2) { top: 30%; right: 14%; font-size: 16px; }
.sparkles i:nth-child(3) { bottom: 22%; left: 20%; font-size: 14px; }
.sparkles i:nth-child(4) { bottom: 30%; right: 18%; font-size: 24px; }
.is-active .sparkles i { animation: twinkle 1.6s ease-in-out infinite; }
.is-active .sparkles i:nth-child(2) { animation-delay: .4s; }
.is-active .sparkles i:nth-child(3) { animation-delay: .8s; }
.is-active .sparkles i:nth-child(4) { animation-delay: 1.2s; }
.is-active .sparkles--late i { animation-name: twinkleLate; animation-duration: 4.6s; animation-iteration-count: 1; }
@keyframes twinkle { 0%, 100% { opacity: 0; transform: scale(.4); } 50% { opacity: 1; transform: scale(1); } }
@keyframes twinkleLate { 0%, 55% { opacity: 0; transform: scale(.4); } 65% { opacity: 1; transform: scale(1.1); } 80%, 100% { opacity: .7; transform: scale(.9); } }

/* Passadoria: ferro atravessa a camisa e os amassados somem */
.iron { transform: translate(20px, 116px); }
.is-active .iron { animation: ironMove 2.8s ease-in-out .2s both; }
@keyframes ironMove { 0% { transform: translate(14px, 116px); } 50% { transform: translate(110px, 112px); } 100% { transform: translate(196px, 116px); } }
.wrinkles path { opacity: 1; }
.is-active .wrinkles path { animation: smooth .35s ease forwards; animation-delay: var(--d); }
@keyframes smooth { to { opacity: 0; } }
.steam circle { opacity: 0; transform-box: fill-box; transform-origin: center; }
.is-active .steam circle { animation: steam 1s ease-out infinite; }
.is-active .steam circle:nth-child(2) { animation-delay: .3s; }
.is-active .steam circle:nth-child(3) { animation-delay: .6s; }
@keyframes steam { 0% { opacity: 0; transform: translateY(6px) scale(.5); } 30% { opacity: .7; } 100% { opacity: 0; transform: translateY(-22px) scale(1.4); } }

/* Embalagem: camisa desce, plástico envolve, selo carimba */
.fold, .wrap, .seal { transform-box: fill-box; }
.is-active .fold { animation: drop .8s cubic-bezier(.3,1.3,.5,1) .15s both; }
@keyframes drop { from { opacity: 0; transform: translateY(-150px); } to { opacity: 1; transform: none; } }
.wrap { transform-origin: top; transform: scaleY(0); }
.is-active .wrap { animation: wrapDown .7s ease-out 1.05s forwards; }
@keyframes wrapDown { from { transform: scaleY(0); opacity: .3; } to { transform: scaleY(1); opacity: 1; } }
.seal { transform-origin: center; opacity: 0; }
.is-active .seal { animation: stamp .45s cubic-bezier(.3,1.5,.5,1) 1.9s forwards; }
@keyframes stamp { from { opacity: 0; transform: scale(2.2) rotate(-14deg); } to { opacity: 1; transform: rotate(-6deg); } }

/* Barra de etapas */
.proc__steps { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.pstep { display: grid; gap: 2px; justify-items: start; padding: 10px 12px 12px; border-radius: 14px; background: var(--surface); border: 1px solid var(--border); font-size: 13px; font-weight: 600; text-align: left; transition: border-color .2s, background .2s; }
.pstep span { font-family: var(--mono); font-size: 11px; color: var(--muted); font-weight: 400; }
.pstep i { display: block; width: 100%; height: 4px; margin-top: 6px; border-radius: 4px; background: rgba(255,255,255,.1); overflow: hidden; }
.pstep b { display: block; height: 100%; width: 0; background: var(--green); border-radius: 4px; }
.pstep.is-active { border-color: rgba(135, 197, 64,.6); background: rgba(135, 197, 64,.1); }
.pstep.is-active span { color: var(--green-light); }
.pstep.is-active b { animation: fill var(--dur, 4.6s) linear forwards; }
.pstep.is-done b { width: 100%; }
.proc.is-paused .pstep.is-active b { animation-play-state: paused; }
@keyframes fill { to { width: 100%; } }

@media (prefers-reduced-motion: reduce) {
  .wrap { transform: none; } .seal, .pbadge { opacity: 1; transform: none; } .wrinkles path { opacity: 0; } .iron { transform: translate(196px, 116px); }
}

/* Passos */
.flow { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; position: relative; }
.flow::before { content: ""; position: absolute; top: 56px; left: 10%; right: 10%; height: 2px; background: linear-gradient(90deg, transparent, var(--green), var(--green-light), transparent); opacity: .45; }
.flow__step { position: relative; padding: 28px; border-radius: var(--radius); background: var(--surface); border: 1px solid var(--border); transition: transform .3s, border-color .3s; }
.flow__step:hover { transform: translateY(-6px); border-color: rgba(135, 197, 64,.5); }
.flow__idx { position: absolute; top: 22px; right: 24px; color: var(--green); font-size: 13px; }
.flow__icon { width: 56px; height: 56px; border-radius: 16px; display: grid; place-items: center; background: var(--navy); border: 1px solid rgba(135, 197, 64,.45); margin-bottom: 22px; position: relative; z-index: 1; box-shadow: 0 0 30px -6px rgba(135, 197, 64,.5); }
.flow__step h3 { font-size: 20px; margin-bottom: 8px; }
.flow__step p { color: var(--muted); font-size: 15px; }

/* Sustentabilidade */
.eco { display: grid; grid-template-columns: 1.2fr .8fr; gap: 64px; align-items: center; }
.eco__copy h2 { font-size: clamp(32px, 4.2vw, 50px); margin-bottom: 22px; }
.eco__copy > p { color: var(--muted); font-size: 18px; }
.checks { list-style: none; padding: 0; margin: 30px 0 0; display: grid; gap: 12px; }
.checks li { display: flex; gap: 14px; align-items: center; padding: 15px 20px; border-radius: 14px; background: var(--surface); border: 1px solid var(--border); }
.checks li::before { content: "✓"; flex: none; width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; background: rgba(135, 197, 64,.18); color: var(--green); font-weight: 700; font-size: 14px; }
.drop { width: min(280px, 64vw); margin-inline: auto; filter: drop-shadow(0 0 40px rgba(255,255,255,.25)); }
.drop svg { width: 100%; height: auto; }
.wave { animation: wave 5s linear infinite; }
.wave--2 { animation-duration: 7s; animation-direction: reverse; }
@keyframes wave { to { transform: translateX(200px); } }

/* Mídia */
.press { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.press__card { display: flex; flex-direction: column; border-radius: var(--radius); background: #fff; color: var(--navy); overflow: hidden; box-shadow: 0 18px 40px -22px rgba(0, 0, 0, .6); transition: transform .3s; }
.press__img { display: block; aspect-ratio: 1 / 1; overflow: hidden; background: #fff; border-bottom: 1px solid rgba(43, 47, 92, .1); }
.press__img img { width: 100%; height: 100%; object-fit: cover; object-position: top; display: block; transition: transform .5s; }
.press__card:hover .press__img img { transform: scale(1.04); }
.press__body { display: flex; flex-direction: column; flex: 1; padding: 20px 22px 22px; }
.press__link { margin-top: auto; padding-top: 14px; font-size: 14px; font-weight: 700; color: var(--navy); }
.press__link:hover { color: var(--green-dark); }
.press__card:hover { transform: translateY(-6px) rotate(-.5deg); }
.press__src { display: block; font-size: 11px; color: var(--green-dark); margin-bottom: 14px; font-weight: 500; }
.press__card p { font-family: var(--display); font-size: 16px; line-height: 1.35; font-weight: 600; }

/* FAQ */
.faq { display: grid; grid-template-columns: .85fr 1.15fr; gap: 56px; align-items: start; }
.faq .section__head { position: sticky; top: calc(var(--nav-h) + 24px); }
.faq__list { display: grid; gap: 12px; }
.faq__list details { border-radius: 16px; background: var(--surface); border: 1px solid var(--border); transition: border-color .2s; }
.faq__list details[open] { border-color: rgba(135, 197, 64,.5); background: var(--surface-2); }
.faq__list summary { list-style: none; cursor: pointer; padding: 20px 56px 20px 22px; font-family: var(--display); font-weight: 600; font-size: 17px; position: relative; }
.faq__list summary::-webkit-details-marker { display: none; }
.faq__list summary::after { content: "+"; position: absolute; right: 20px; top: 50%; transform: translateY(-50%); width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; background: rgba(135, 197, 64,.15); color: var(--green); font-size: 18px; transition: transform .3s; }
.faq__list details[open] summary::after { transform: translateY(-50%) rotate(45deg); }
.faq__list details p { padding: 0 22px 20px; color: var(--muted); }

/* CTA */
.cta { padding: 40px 0 110px; }
.cta__inner { display: flex; align-items: center; gap: 32px; flex-wrap: wrap; padding: 48px 56px; border-radius: 28px; background: var(--green); color: var(--navy-900); position: relative; overflow: hidden; box-shadow: 0 30px 80px -30px rgba(135, 197, 64,.7); }
.cta__inner > div { flex: 1 1 320px; }
.cta__drop { width: 64px; height: auto; filter: brightness(0) saturate(100%) invert(14%) sepia(30%) saturate(1800%) hue-rotate(215deg); }
.cta h2 { font-size: clamp(28px, 3.6vw, 42px); margin-bottom: 8px; }
.cta p { font-weight: 500; }

/* CTA fixo (mobile) */
.sticky-cta { position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 900; display: none; flex-direction: column; align-items: center; padding: 12px; border-radius: 16px; background: var(--green); color: var(--navy-900); font-weight: 700; box-shadow: 0 10px 40px -8px rgba(0,0,0,.6); transform: translateY(140%); transition: transform .35s; }
.sticky-cta span { font-size: 12px; font-weight: 500; }
.sticky-cta.is-on { transform: none; }

/* Footer */
.footer { border-top: 1px solid var(--border); padding: 64px 0 28px; background: var(--navy-900); }
.footer__grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1.2fr; gap: 40px; }
.footer .logo img { height: 76px; }
.footer h4 { font-size: 13px; font-family: var(--mono); font-weight: 500; color: var(--green); margin-bottom: 16px; letter-spacing: .04em; text-transform: uppercase; }
.footer ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.footer a:hover { color: var(--green); }
.footer ul a, .footer address, .footer p { color: var(--muted); font-size: 14px; font-style: normal; }
.social { display: flex; gap: 10px; margin-top: 22px; }
.social a { width: 42px; height: 42px; border-radius: 12px; display: grid; place-items: center; border: 1px solid var(--border); background: var(--surface); transition: border-color .2s; }
.social a:hover { border-color: var(--green); }
.social svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.footer address { margin-bottom: 10px; }
.abf { display: inline-block; margin-top: 14px; font-size: 11px; padding: 6px 10px; border-radius: 8px; border: 1px solid var(--border-strong); color: var(--muted); }
.footer__bottom { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-top: 48px; padding-top: 24px; border-top: 1px solid var(--border); font-size: 12px; color: rgba(255, 255, 255, .55); }

/* Animações */
.fade-in { animation: fadeIn .4s ease both; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(8px); } }
.reveal { opacity: 0; transform: translateY(24px); transition: opacity .8s cubic-bezier(.2,.7,.2,1), transform .8s cubic-bezier(.2,.7,.2,1); }
.reveal.is-in { opacity: 1; transform: none; }

/* Responsivo */
@media (max-width: 1100px) {
  .press { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 960px) {
  .nav__links { position: fixed; top: var(--nav-h); left: 0; right: 0; flex-direction: column; padding: 16px; gap: 4px; background: rgba(43, 47, 92,.97); backdrop-filter: blur(16px); border-bottom: 1px solid var(--border); transform: translateY(-130%); transition: transform .35s; z-index: -1; }
  .nav__links.is-open { transform: none; }
  .nav__links a { padding: 14px 16px; font-size: 16px; }
  .nav__toggle { display: block; }
  .hero__inner, .model, .eco, .faq { grid-template-columns: minmax(0, 1fr); gap: 48px; }
  .faq .section__head { position: static; }
  .flow { grid-template-columns: repeat(2, 1fr); }
  .flow::before { display: none; }
  .perks { grid-template-columns: 1fr; }
  .stats__grid { grid-template-columns: repeat(2, 1fr); }
  .stat:nth-child(3) { border-left: 0; }
  .stat:nth-child(n+3) { border-top: 1px solid var(--border); }
  .footer__grid { grid-template-columns: 1fr 1fr; }
  .sticky-cta { display: flex; }
  .footer { padding-bottom: 100px; }
}
@media (max-width: 640px) {
  .nav__cta .btn { display: none; }
  .logo img { height: 44px; }
  .section { padding: 80px 0; }
  .hero { padding-top: calc(var(--nav-h) + 28px); }
  .lead { padding: 24px 18px; }
  .row2, .flow, .services, .press { grid-template-columns: 1fr; }
  .stat { padding: 22px 18px; }
  .cta__inner { padding: 32px 24px; }
  .footer__grid { grid-template-columns: 1fr; }
  .hero__actions .btn { width: 100%; white-space: normal; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
  .reveal { opacity: 1; transform: none; }
}

/* Cursor: gota eLav (apenas em dispositivos com mouse) */
@media (pointer: fine) {
  html, body, .leaflet-container, .leaflet-grab { cursor: url("../assets/cursor.png") 16 1, auto; cursor: -webkit-image-set(url("../assets/cursor.png") 1x, url("../assets/cursor@2x.png") 2x) 16 1, auto; }
  a, button, select, summary, label, [role="tab"], .gitem, .leaflet-interactive, .leaflet-marker-icon, .leaflet-control-zoom a, .pills input { cursor: url("../assets/cursor-hover.png") 16 1, pointer !important; cursor: -webkit-image-set(url("../assets/cursor-hover.png") 1x, url("../assets/cursor-hover@2x.png") 2x) 16 1, pointer !important; }
  input[type="text"], input[type="email"], input[type="tel"], input[type="search"], input:not([type]), textarea { cursor: text; }
  .leaflet-dragging .leaflet-grab, .leaflet-dragging .leaflet-interactive { cursor: grabbing !important; }
}
.ripple { position: fixed; z-index: 9999; width: 10px; height: 10px; margin: -5px 0 0 -5px; border-radius: 50%; border: 2px solid rgba(135, 197, 64,.9); pointer-events: none; animation: ripple .6s ease-out forwards; }
@keyframes ripple { to { transform: scale(5); opacity: 0; border-width: 1px; } }
@media (prefers-reduced-motion: reduce) { .ripple { display: none; } }

/* ===== Modelos de franquia ===== */
.models { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.mcard { display: flex; flex-direction: column; gap: 16px; padding: 32px; border-radius: var(--radius); background: var(--surface); border: 1px solid var(--border); position: relative; overflow: hidden; transition: transform .3s, border-color .3s; }
.mcard:hover { transform: translateY(-6px); border-color: rgba(135, 197, 64, .5); }
.mcard--easy { border-color: rgba(135, 197, 64, .45); background: linear-gradient(160deg, rgba(135, 197, 64, .12), var(--surface) 55%); }
.mcard__top { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; min-height: 64px; }
.mcard__logo { height: 56px; width: auto; max-width: 70%; object-fit: contain; }
.mcard__badge { flex: none; font-size: 12px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; padding: 6px 12px; border-radius: 999px; background: var(--green); color: var(--navy-900); }
.mcard__badge--alt { background: rgba(255, 255, 255, .1); color: #fff; border: 1px solid var(--border-strong); }
.mcard h3 { font-size: 22px; color: var(--green-light); }
.mcard__lead { color: var(--muted); font-size: 15px; }
.mcard__price { padding: 16px 18px; border-radius: var(--radius-sm); background: rgba(0, 0, 0, .22); border: 1px solid var(--border); display: grid; gap: 2px; }
.mcard__price .mono { font-size: 12px; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); }
.mcard__price strong { font-family: var(--display); font-size: 30px; color: #fff; line-height: 1.15; }
.mcard__price sup { color: var(--green); }
.mcard__price small { color: var(--green); font-size: 13px; }
.mcard__condo { margin-top: 12px; padding-top: 12px; border-top: 1px dashed var(--border); display: flex; align-items: center; gap: 12px; }
.mcard__condo svg { width: 34px; height: 34px; flex: none; padding: 7px; border-radius: 10px; color: var(--green); background: color-mix(in srgb, #87C540 16%, transparent); }
.mcard__condo span { display: grid; font-size: 13px; color: var(--muted); }
.mcard__condo b { font-family: var(--display); font-size: 21px; color: #fff; font-weight: 700; line-height: 1.2; }
.mcard__specs { list-style: none; margin: 0; padding: 0; display: grid; gap: 0; }
.mcard__specs li { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 12px; padding: 11px 0; border-top: 1px solid var(--border); font-size: 14.5px; }
.mcard__specs b { color: #fff; }
.mcard__specs span { color: var(--muted); }
.mcard__ideal { font-size: 14.5px; color: var(--muted); margin-top: auto; }
.mcard__ideal b { color: var(--green-light); }
.models__both { margin-top: 22px; padding: 22px 26px; border-radius: var(--radius); border: 1px dashed rgba(135, 197, 64, .45); display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; }
.models__both ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px 20px; }
.models__both li { position: relative; padding-left: 22px; font-size: 14.5px; }
.models__both li::before { content: "✓"; position: absolute; left: 0; color: var(--green); font-weight: 700; }
.models__fine { margin-top: 16px; }
@media (max-width: 860px) {
  .models { grid-template-columns: minmax(0, 1fr); }
  .mcard { padding: 24px; }
  .mcard__specs li { grid-template-columns: minmax(0, 1fr); gap: 2px; }
}

/* ===== Fotos das unidades ===== */
.gitem__top { display: flex; gap: 12px; align-items: flex-start; }
.gitem__info { flex: 1; min-width: 0; }
.gitem__thumb { flex: none; width: 84px; height: 84px; object-fit: cover; border-radius: 10px; background: rgba(43, 47, 92, .08); box-shadow: 0 4px 12px -6px rgba(0, 0, 0, .35); }
.pop__photo { display: block; width: 100%; height: 110px; object-fit: cover; border-radius: 10px; margin-bottom: 10px; }

/* ===== Cartões de unidade (estilo das fotos de loja) ===== */
.ucard { display: flex; flex-direction: column; border-radius: var(--radius); background: #fff; color: var(--navy); overflow: hidden; box-shadow: 0 18px 40px -22px rgba(0, 0, 0, .6); transition: transform .3s, box-shadow .3s; }
.ucard:hover { transform: translateY(-6px); box-shadow: 0 26px 50px -22px rgba(0, 0, 0, .7); }
.ucard__photo { position: relative; aspect-ratio: 4 / 3; background: var(--navy); overflow: hidden; }
.ucard__photo > img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s; }
.ucard:hover .ucard__photo > img { transform: scale(1.04); }
.ucard__ph { position: absolute; inset: 0; display: none; place-items: center; align-content: center; gap: 10px; background: radial-gradient(circle at 50% 40%, var(--navy-700), var(--navy)); }
.ucard__ph img { width: 54px; height: auto; opacity: .9; }
.ucard__ph small { color: rgba(255, 255, 255, .7); font-size: 12px; letter-spacing: .06em; text-transform: uppercase; }
.ucard__photo.is-empty .ucard__ph { display: grid; }
.ucard__uf { position: absolute; top: 12px; left: 12px; padding: 4px 10px; border-radius: 999px; background: var(--green); color: var(--navy-900); font-size: 12px; font-weight: 700; }
.ucard__body { display: flex; flex-direction: column; gap: 8px; padding: 20px 22px 22px; flex: 1; }
.ucard h3 { font-size: 16px; line-height: 1.3; color: var(--navy); margin-bottom: 4px; }
.ucard p { font-size: 14px; color: color-mix(in srgb, var(--navy) 80%, #fff); }
.ucard p b { color: var(--navy); }
.ucard__km { color: var(--green-dark) !important; font-weight: 700; }
.ucard__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: auto; padding-top: 10px; }
.ucard__btn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; height: 36px; min-width: 36px; padding: 0 12px; border-radius: 999px; background: var(--green); color: var(--navy-900); font-size: 13px; font-weight: 700; transition: transform .2s, background .2s; }
.ucard__btn:hover { transform: translateY(-2px); background: var(--green-light); }
.ucard__btn svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.ucard__btn--route { background: var(--navy); color: #fff; }
.ucard__btn--route:hover { background: var(--navy-700); }

/* Home: destaque */
.ushow { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.ushow__search { display: flex; align-items: center; gap: 10px; max-width: 640px; margin: 40px auto 22px; padding: 8px 8px 8px 18px; border-radius: 999px; background: #fff; box-shadow: 0 16px 40px -20px rgba(0, 0, 0, .6); }
.ushow__search svg { width: 20px; height: 20px; flex: none; fill: none; stroke: var(--navy); stroke-width: 2; stroke-linecap: round; }
.ushow__search input { flex: 1; min-width: 0; border: 0; outline: 0; background: transparent; font: inherit; font-size: 15px; color: var(--navy); }
.ushow__search input::placeholder { color: color-mix(in srgb, var(--navy) 55%, #fff); }

/* Página de unidades */
.upage__hero { padding: calc(var(--nav-h) + 56px) 0 8px; text-align: center; }
.upage__hero h1 { font-family: var(--display); font-size: clamp(34px, 5vw, 60px); line-height: 1.08; margin: 12px auto 16px; max-width: 820px; }
.upage__hero p { color: var(--muted); font-size: 18px; max-width: 620px; margin: 0 auto; }
.upage__stats { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 26px; }
.upage__stats span { padding: 8px 16px; border-radius: 999px; border: 1px solid var(--border); background: var(--surface); font-size: 14px; color: var(--muted); }
.upage__stats b { color: var(--green); font-size: 16px; }
.upage__map { padding-top: 36px; }
.ugrid__head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 12px; }
.ugrid__head h2 { font-size: clamp(30px, 4vw, 46px); }
.ugrid__count { color: var(--green); font-weight: 600; }
.ugrid__hint { color: var(--muted); margin: 10px 0 30px; }
.ugrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 20px; }
.ugrid .ucard { cursor: pointer; }
.ugrid__empty { grid-column: 1 / -1; color: var(--muted); }
.ugrid__empty a { color: var(--green); font-weight: 700; }

@media (max-width: 1100px) { .ushow { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) {
  .ushow { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; margin: 0 -16px; padding: 4px 16px 18px; }
  .ushow .ucard { flex: 0 0 82%; scroll-snap-align: start; }
  .ushow__search { border-radius: 18px; }
}

/* Mapa na home, abaixo das fotos */
.umap { margin-top: 64px; }
.umap__title { font-family: var(--display); font-size: clamp(22px, 2.6vw, 30px); text-align: center; margin-bottom: 24px; }
.umap__title span { display: block; font-family: var(--font); font-size: 16px; font-weight: 400; color: var(--muted); margin-top: 6px; }

#uMore[hidden] { display: none; }

/* ===== Avisos (pop-ups) ===== */
html.aviso-open { overflow: hidden; }
.aviso { position: fixed; inset: 0; z-index: 3000; display: grid; place-items: center; padding: 16px; opacity: 0; transition: opacity .3s; }
.aviso.is-on { opacity: 1; }
.aviso__backdrop { position: absolute; inset: 0; background: rgba(0, 0, 0, .6); backdrop-filter: blur(6px); }
.aviso__box { position: relative; width: min(500px, 100%); max-height: calc(100vh - 32px); overflow-x: hidden; overflow-y: auto; padding: 38px 34px 30px; border-radius: 24px; background: linear-gradient(160deg, var(--navy-700), var(--navy) 45%, var(--navy-deep)); border: 1px solid rgba(135, 197, 64, .45); box-shadow: 0 30px 80px -20px rgba(0, 0, 0, .8); transform: translateY(24px) scale(.97); transition: transform .35s cubic-bezier(.2, .8, .2, 1); }
.aviso.is-on .aviso__box { transform: none; }
.aviso__box::before { content: ""; position: absolute; top: -90px; right: -90px; width: 240px; height: 240px; border-radius: 50%; background: radial-gradient(circle, rgba(135, 197, 64, .35), transparent 70%); pointer-events: none; }
.aviso__close { position: absolute; top: 12px; right: 12px; width: 36px; height: 36px; border-radius: 50%; border: 1px solid var(--border); background: rgba(0, 0, 0, .2); color: #fff; font-size: 15px; cursor: pointer; z-index: 1; transition: background .2s; }
.aviso__close:hover { background: rgba(255, 255, 255, .12); }
.aviso__drop { width: 44px; height: auto; margin-bottom: 14px; }
.aviso__tag { display: inline-block; padding: 5px 12px; border-radius: 999px; background: var(--green); color: var(--navy-900); font-size: 12px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; margin-bottom: 14px; }
.aviso h2 { font-family: var(--display); font-size: clamp(26px, 4vw, 34px); line-height: 1.12; margin-bottom: 12px; }
.aviso p { color: var(--muted); font-size: 15.5px; }
.aviso p b { color: #fff; }
.aviso__form { display: flex; gap: 10px; margin-top: 22px; }
.aviso__form--col { flex-direction: column; }
.aviso__form input { flex: 1; min-width: 0; min-height: 50px; padding: 0 16px; border-radius: 14px; border: 1px solid var(--border-strong); background: rgba(0, 0, 0, .25); color: #fff; font: inherit; font-size: 15px; outline: 0; transition: border-color .2s; }
.aviso__form input:focus { border-color: var(--green); }
.aviso__form input::placeholder { color: rgba(255, 255, 255, .55); }
.aviso__form.is-error input:invalid, .aviso__form.is-error input:placeholder-shown { border-color: #fff; }
.aviso__msg { min-height: 1em; font-size: 13px !important; color: #fff !important; }
.aviso__ok { padding: 16px; border-radius: 14px; background: rgba(135, 197, 64, .16); border: 1px solid var(--green); color: #fff !important; }
.aviso__list { list-style: none; margin: 20px 0 0; padding: 0; display: grid; gap: 8px; }
.aviso__list li { position: relative; padding-left: 24px; font-size: 14.5px; }
.aviso__list li::before { content: "✓"; position: absolute; left: 0; color: var(--green); font-weight: 700; }
.aviso__fine { margin-top: 12px; font-size: 12px !important; }
@media (max-width: 520px) {
  .aviso__box { padding: 32px 22px 24px; }
  .aviso__form:not(.aviso__form--col) { flex-direction: column; }
}

/* Aviso no canto (eLav Easy) */
.aviso-toast { position: fixed; left: 20px; bottom: 20px; z-index: 2500; width: min(320px, calc(100vw - 32px)); padding: 20px 18px 18px; border-radius: 18px; background: var(--navy); border: 1px solid rgba(135, 197, 64, .5); box-shadow: 0 20px 50px -15px rgba(0, 0, 0, .7); transform: translateY(140%); transition: transform .45s cubic-bezier(.2, .8, .2, 1); }
.aviso-toast.is-on { transform: none; }
.aviso-toast img { height: 34px; width: auto; margin-bottom: 10px; }
.aviso-toast p { font-size: 14px; color: var(--muted); margin-bottom: 14px; }
.aviso-toast p b { color: var(--green-light); }
.aviso-toast .aviso__close { top: 8px; right: 8px; width: 30px; height: 30px; font-size: 13px; }
@media (max-width: 640px) { .aviso-toast { left: 16px; bottom: 86px; } }
.aviso h2 .grad { white-space: nowrap; }

/* Busca na lista de lojas */
.ugrid__tools { display: flex; flex-direction: column; align-items: flex-end; gap: 10px; }
.ugrid__search { display: flex; align-items: center; gap: 10px; width: min(380px, 100%); min-height: 48px; padding: 0 16px; border-radius: 999px; background: #fff; box-shadow: 0 12px 30px -18px rgba(0, 0, 0, .6); cursor: text; }
.ugrid__search svg { width: 19px; height: 19px; flex: none; fill: none; stroke: var(--navy); stroke-width: 2; stroke-linecap: round; }
.ugrid__search input { flex: 1; min-width: 0; border: 0; outline: 0; background: transparent; font: inherit; font-size: 15px; color: var(--navy); }
.ugrid__search input::placeholder { color: color-mix(in srgb, var(--navy) 55%, #fff); }
.ugrid__search:focus-within { box-shadow: 0 0 0 3px var(--green), 0 12px 30px -18px rgba(0, 0, 0, .6); }
@media (max-width: 760px) { .ugrid__tools { width: 100%; align-items: stretch; } .ugrid__search { width: 100%; } }

/* Etapa 4: Entrega */
.van { transform: translateX(-190px); }
.is-active .van { animation: drive 1.5s cubic-bezier(.2, .8, .3, 1) .15s forwards; }
@keyframes drive { from { transform: translateX(-190px); } 80% { transform: translateX(6px); } to { transform: none; } }
.wheel { transform-box: fill-box; transform-origin: center; }
.is-active .wheel { animation: spin .35s linear .15s 4; }
.speed { opacity: 0; }
.is-active .speed { animation: speedLines 1.5s ease-out .15s; }
@keyframes speedLines { 0%, 60% { opacity: 1; transform: translateX(0); } 100% { opacity: 0; transform: translateX(-20px); } }
.pkg, .dpin { transform-box: fill-box; transform-origin: bottom center; opacity: 0; }
.is-active .pkg { animation: pkgDrop .5s cubic-bezier(.3, 1.4, .5, 1) 1.7s forwards; }
@keyframes pkgDrop { from { opacity: 0; transform: translateY(-34px) scale(.8); } to { opacity: 1; transform: none; } }
.is-active .dpin { animation: pinIn .6s cubic-bezier(.3, 1.6, .5, 1) 2.3s forwards; }
@keyframes pinIn { from { opacity: 0; transform: translateY(-30px) scale(.6); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .van, .pkg, .dpin { transform: none; opacity: 1; } }

/* Gota da sustentabilidade: enche de água junto com o contador */
.drop { position: relative; }
.drop .fill { transform: translateY(70px); transition: transform 2.4s cubic-bezier(.2, .7, .2, 1) .2s; }
.eco__visual.is-in .drop .fill { transform: translateY(-72px); }
.bubs circle { transform-box: fill-box; animation: bubUp 3.2s ease-in infinite; opacity: 0; }
.bubs circle:nth-child(2) { animation-delay: .7s; } .bubs circle:nth-child(3) { animation-delay: 1.4s; }
.bubs circle:nth-child(4) { animation-delay: 2.1s; } .bubs circle:nth-child(5) { animation-delay: 2.6s; }
@keyframes bubUp { 0% { opacity: 0; transform: translateY(0); } 20% { opacity: 1; } 100% { opacity: 0; transform: translateY(-120px); } }
.drop__num { position: absolute; left: 12%; right: 12%; top: 50%; display: grid; justify-items: center; text-align: center; color: var(--navy); line-height: 1.05; margin: 0; }
.drop__num b { font-family: var(--display); font-size: clamp(44px, 6vw, 60px); font-weight: 800; letter-spacing: -.02em; }
.drop__num small { font-size: 15px; font-weight: 700; margin-top: 2px; }
.drop__label { font-size: 12.5px; color: color-mix(in srgb, var(--navy) 75%, #fff); margin-top: 4px; }
.checks li > span b { color: var(--green-light); }
.eco__fine { margin-top: 14px; font-size: 13px; color: var(--muted); }
@media (prefers-reduced-motion: reduce) { .drop .fill { transition: none; transform: translateY(-72px); } .bubs { display: none; } }

/* Gota idêntica à da marca: contorno recortado do logo + água dentro do mesmo formato */
.drop { aspect-ratio: 696 / 1028; width: min(260px, 60vw); }
.drop__water { position: absolute; inset: 0; -webkit-mask: url("data:image/png;base64,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") center / 100% 100% no-repeat; mask: url("data:image/png;base64,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") center / 100% 100% no-repeat; }
.drop__water svg { width: 100%; height: 100%; display: block; }
.drop__ring { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.press__body { flex-direction: row; align-items: center; justify-content: space-between; gap: 10px; padding: 16px 20px; }
.press__body .press__src { margin: 0; }
.press__link { margin: 0; padding: 0; white-space: nowrap; }

/* ===== Blog ===== */
.blog { padding-top: 40px; }
.blog__tools { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 30px; }
.blog__cats { display: flex; flex-wrap: wrap; gap: 8px; }
.blog__cats button { padding: 10px 16px; border-radius: 999px; border: 1px solid var(--border-strong); background: var(--surface); color: #fff; font: inherit; font-size: 14px; font-weight: 600; cursor: pointer; transition: all .2s; }
.blog__cats button small { color: var(--green); margin-left: 4px; }
.blog__cats button:hover { border-color: var(--green); }
.blog__cats button.is-sel { background: var(--green); border-color: var(--green); color: var(--navy-900); }
.blog__cats button.is-sel small { color: var(--navy-900); }
.bgrid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.bcard { display: flex; flex-direction: column; border-radius: var(--radius); background: #fff; color: var(--navy); overflow: hidden; box-shadow: 0 18px 40px -22px rgba(0, 0, 0, .6); transition: transform .3s; }
.bcard[hidden] { display: none; }
.bcard:hover { transform: translateY(-6px); }
.bcard__img { display: block; aspect-ratio: 16 / 10; overflow: hidden; background: var(--navy); }
.bcard__cover { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s; }
.bcard:hover .bcard__cover { transform: scale(1.05); }
.bcover--empty { display: grid; place-items: center; width: 100%; height: 100%; background: radial-gradient(circle at 50% 40%, var(--navy-700), var(--navy)); }
.bcover--empty img { width: 52px; height: auto; }
.bcard__body { display: flex; flex-direction: column; gap: 10px; flex: 1; padding: 20px 22px 22px; }
.bcard__meta { font-size: 12.5px; color: color-mix(in srgb, var(--navy) 65%, #fff); }
.bcard__meta b { color: var(--green-dark); }
.bcard h3 { font-size: 18px; line-height: 1.3; }
.bcard h3 a { color: var(--navy); }
.bcard h3 a:hover { color: var(--green-dark); }
.bcard p { font-size: 14px; color: color-mix(in srgb, var(--navy) 78%, #fff); }
.bcard__more { margin-top: auto; padding-top: 6px; font-size: 14px; font-weight: 700; color: var(--navy); }
#bMore[hidden], #bEmpty[hidden] { display: none; }

/* Página do artigo */
.post { padding: calc(var(--nav-h) + 40px) 0 60px; }
.post__wrap { max-width: 860px; }
.post__crumbs { font-size: 14px; color: var(--muted); margin-bottom: 18px; }
.post__crumbs a { color: var(--green); font-weight: 600; }
.post__crumbs span { margin: 0 4px; }
.post__head .bcard__meta { color: var(--muted); font-size: 14px; }
.post__head .bcard__meta b { color: var(--green); }
.post__head h1 { font-family: var(--display); font-size: clamp(30px, 4.4vw, 48px); line-height: 1.12; margin: 12px 0 28px; }
.post__cover { margin: 0 0 -60px; position: relative; z-index: 1; padding: 0 28px; }
.post__img { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border-radius: var(--radius); box-shadow: 0 24px 60px -25px rgba(0, 0, 0, .8); }
.post__cover .bcover--empty { aspect-ratio: 16 / 9; height: auto; border-radius: var(--radius); }
.post__cover figcaption { font-size: 12px; color: var(--muted); margin-top: 8px; text-align: right; }
.post__body { background: #fff; color: var(--navy); border-radius: var(--radius); padding: 96px 56px 48px; font-size: 17.5px; line-height: 1.75; }
.post__body p { margin: 0 0 1.1em; color: color-mix(in srgb, var(--navy) 88%, #fff); }
.post__body h2 { font-family: var(--display); font-size: 26px; line-height: 1.25; margin: 1.6em 0 .6em; color: var(--navy); }
.post__body h3 { font-size: 21px; margin: 1.4em 0 .5em; }
.post__body strong { color: var(--navy); }
.post__body a { color: var(--green-dark); font-weight: 600; text-decoration: underline; }
.post__body img { max-width: 100%; height: auto; border-radius: 12px; margin: 10px 0; }
.post__share { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 22px; font-size: 14px; color: var(--muted); }
.post__share a { padding: 8px 16px; border-radius: 999px; border: 1px solid var(--border-strong); color: #fff; font-weight: 600; transition: all .2s; }
.post__share a:hover { border-color: var(--green); color: var(--green-light); }
.bgrid--related { margin-top: 30px; }

@media (max-width: 960px) { .bgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) {
  .bgrid { grid-template-columns: minmax(0, 1fr); }
  .blog__tools .ugrid__search { width: 100%; }
  .post__cover { padding: 0 12px; margin-bottom: -36px; }
  .post__body { padding: 60px 22px 30px; font-size: 16.5px; }
}
.post__cover figcaption { position: absolute; right: 40px; bottom: 12px; margin: 0; padding: 3px 9px; border-radius: 6px; background: rgba(0, 0, 0, .5); color: #fff; font-size: 11.5px; }
.post__body .post__author { margin-top: 2em; padding-top: 1em; border-top: 1px solid rgba(43, 47, 92, .12); font-size: 14px; font-style: italic; }
@media (max-width: 640px) { .post__cover figcaption { right: 20px; } }

/* ===== Páginas de documentos (termos) ===== */
.legal { padding-top: 30px; }
.legal__wrap { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 36px; align-items: start; max-width: 1080px; }
.legal__toc { position: sticky; top: calc(var(--nav-h) + 20px); padding: 20px; border-radius: var(--radius); background: var(--surface); border: 1px solid var(--border); }
.legal__toc ol { margin: 12px 0 0; padding-left: 18px; display: grid; gap: 9px; font-size: 14px; }
.legal__toc li::marker { color: var(--green); }
.legal__toc a { color: var(--muted); transition: color .2s; }
.legal__toc a:hover { color: var(--green-light); }
.legal__body { padding: 44px 52px; }
.legal__body section { scroll-margin-top: calc(var(--nav-h) + 20px); }
.legal__body section:first-child h2 { margin-top: 0; }
.legal__body ul { margin: 0 0 1.1em; padding-left: 22px; color: color-mix(in srgb, var(--navy) 88%, #fff); }
.legal__body li { margin-bottom: .35em; }
.legal__body li::marker { color: var(--green-dark); }
.legal__company { margin-top: 2.2em; padding: 18px 20px; border-radius: 14px; background: rgba(135, 197, 64, .12); font-size: 14.5px; line-height: 1.6; }
@media (max-width: 860px) {
  .legal__wrap { grid-template-columns: minmax(0, 1fr); }
  .legal__toc { position: static; }
  .legal__body { padding: 30px 22px; }
}
.legal__defs { list-style: none; padding-left: 0 !important; }
.legal__defs li { padding: 12px 16px; border-radius: 12px; background: rgba(43, 47, 92, .05); margin-bottom: 10px; }
.legal__defs b { color: var(--navy); }
.legal__note { margin-top: 2em; font-weight: 600; }
/* Páginas com área de leitura branca: menu sempre sólido */
.page-blog .nav, .page-legal .nav { background: rgba(43, 47, 92, .96); backdrop-filter: blur(16px) saturate(140%); border-color: var(--border); }


/* ===== Selo Black Friday (preços promocionais até 30/11) ===== */
.bfseal { display: inline-flex; align-items: center; gap: 6px; width: max-content; padding: 5px 6px 5px 12px; border-radius: 999px; background: var(--navy-900); border: 1.5px solid var(--green); box-shadow: 0 6px 18px -6px rgba(0, 0, 0, .6), 0 0 0 3px rgba(135, 197, 64, .15); line-height: 1; white-space: nowrap; }
.bfseal b { font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #fff; }
.bfseal small { padding: 4px 8px; border-radius: 999px; background: var(--green); color: var(--navy-900); font-size: 10.5px; font-weight: 800; letter-spacing: .02em; }
.hero__price, .mcard__price { position: relative; }
.hero__price .bfseal, .mcard__price .bfseal { position: absolute; top: -14px; right: -16px; transform: rotate(4deg); animation: bfSeal 2.4s ease-in-out infinite; }
.mcard__price .bfseal { right: 14px; }
.hero__price .bfseal b { font-size: 11px; color: #fff; letter-spacing: .08em; }
.hero__price .bfseal small { font-size: 10.5px; color: var(--navy-900); text-transform: none; letter-spacing: .02em; }
.perk .bfseal { margin-bottom: 12px; }
@keyframes bfSeal { 50% { transform: rotate(4deg) scale(1.06); } }
@media (max-width: 480px) { .hero__price .bfseal { right: -8px; } }
@media (prefers-reduced-motion: reduce) { .bfseal { animation: none !important; } }
