/* ============================================================================
   ECOTURISTA · estilo do site
   ----------------------------------------------------------------------------
   Evolução direta da identidade das fichas: os mesmos tokens de cor (claro e
   escuro), a mesma dupla Poppins + Nunito Sans, os mesmos raios e linhas.
   Mobile-first: tudo é uma coluna por padrão; as grades aparecem por
   min-width. Nada aqui é decorativo por decorar — cada dispositivo visual
   repete um significado que a ficha já ensinou ao leitor.
   ========================================================================= */

:root{
  --ground:#F3F6F3; --surface:#FFFFFF; --sunk:#E7EFE9;
  --ink:#17332A; --body:#3D4C46; --muted:#697A72; --faint:#95A49C;
  --line:#D7E1D9; --line-soft:#E6ECE7;
  --verde:#1E8A4F; --verde-forte:#17332A; --verde-suave:#E1F0E7;
  --alerta:#A2462B; --alerta-suave:#F8E6DD;
  --aviso:#8E6A15; --aviso-suave:#F6EBD4;
  --sobre-verde:#FFFFFF;
  --r:10px; --r-p:6px;
  color-scheme: light dark;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --ground:#0C1512; --surface:#14201B; --sunk:#192720;
    --ink:#E9F1EB; --body:#C1CFC7; --muted:#93A39B; --faint:#6D7D75;
    --line:#25352D; --line-soft:#1D2A24;
    --verde:#4FBE7E; --verde-forte:#8FD6AC; --verde-suave:#163023;
    --alerta:#E4947C; --alerta-suave:#32201A;
    --aviso:#D6AB55; --aviso-suave:#2C2411;
    --sobre-verde:#0C1512;
  }
}
:root[data-theme="dark"]{
  --ground:#0C1512; --surface:#14201B; --sunk:#192720;
  --ink:#E9F1EB; --body:#C1CFC7; --muted:#93A39B; --faint:#6D7D75;
  --line:#25352D; --line-soft:#1D2A24;
  --verde:#4FBE7E; --verde-forte:#8FD6AC; --verde-suave:#163023;
  --alerta:#E4947C; --alerta-suave:#32201A;
  --aviso:#D6AB55; --aviso-suave:#2C2411;
  --sobre-verde:#0C1512;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){ html{scroll-behavior:auto} *{transition:none!important} }
body{margin:0;background:var(--ground);color:var(--body);
  font-family:"Nunito Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:16.5px;line-height:1.6;-webkit-font-smoothing:antialiased}
h1,h2,h3,.num{font-family:"Poppins",system-ui,sans-serif;color:var(--ink);
  margin:0;letter-spacing:-.015em;text-wrap:balance}
img{max-width:100%}
a{color:var(--verde)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{
  outline:2px solid var(--verde);outline-offset:3px;border-radius:var(--r-p)}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
.wrap-estreito{max-width:820px;margin:0 auto;padding:0 20px}

/* ---- rótulo de seção (o "olho" das fichas) ---- */
.olho{font-family:"Poppins",sans-serif;font-size:12px;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;color:var(--verde);margin:0}

/* ============================== TOPO ==================================== */
.topo{background:var(--surface);border-bottom:1px solid var(--line);
  position:sticky;top:0;z-index:30}
.topo .wrap{display:flex;align-items:center;gap:10px;padding:10px 20px;min-height:58px}
.topo .logo{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}
.topo .logo img{height:30px;width:auto;display:block}
:root[data-theme="dark"] .topo .logo img,
:root:not([data-theme="light"]) .topo .logo img{
  filter:brightness(0) invert(1) sepia(.25) saturate(3) hue-rotate(83deg)}
@media (prefers-color-scheme:light){
  :root:not([data-theme="dark"]) .topo .logo img{filter:none}}
.topo nav{margin-left:auto;display:flex;gap:2px}
.topo nav a{font-family:"Poppins",sans-serif;font-size:14px;font-weight:600;
  color:var(--body);text-decoration:none;padding:9px 12px;border-radius:var(--r-p)}
.topo nav a:hover{background:var(--sunk);color:var(--ink)}
.topo nav a[aria-current="page"]{color:var(--verde)}
@media (max-width:560px){
  .topo nav a{padding:9px 9px;font-size:13.5px}
  .topo nav .some-no-celular{display:none}
}

/* ============================== HERÓI =================================== */
.heroi{background:var(--surface);border-bottom:1px solid var(--line);
  padding:52px 0 46px}
.heroi h1{font-size:clamp(30px,6.2vw,52px);line-height:1.08;font-weight:700;
  max-width:19ch}
.heroi .abre{margin:16px 0 0;font-size:clamp(16.5px,2.4vw,19px);
  color:var(--body);max-width:56ch}
.heroi .abre strong{color:var(--ink)}
@media (min-width:760px){ .heroi{padding:72px 0 62px} }

/* busca do herói e do explorar */
.busca{margin:26px 0 0;display:flex;gap:8px;max-width:560px}
.busca input[type=search]{flex:1;min-width:0;font:inherit;color:var(--ink);
  background:var(--ground);border:1.5px solid var(--line);border-radius:var(--r);
  padding:12px 16px}
.busca input[type=search]::placeholder{color:var(--faint)}
.busca button{font-family:"Poppins",sans-serif;font-weight:600;font-size:15px;
  color:var(--sobre-verde);background:var(--verde);border:0;border-radius:var(--r);
  padding:12px 20px;cursor:pointer}
.busca button:hover{filter:brightness(1.06)}

/* ============================== SEÇÕES ================================== */
.secao{padding:40px 0}
.secao+.secao{border-top:1px solid var(--line-soft)}
.secao h2{font-size:clamp(21px,3.4vw,27px);font-weight:700;margin:6px 0 0}
.secao .sub{margin:8px 0 0;color:var(--muted);max-width:62ch}
.secao .mais{margin:18px 0 0;font-family:"Poppins",sans-serif;font-weight:600;
  font-size:14.5px}
@media (min-width:760px){ .secao{padding:56px 0} }

/* ============================== CARTÕES ================================= */
.cartoes{margin:22px 0 0;display:grid;gap:12px;grid-template-columns:1fr}
@media (min-width:640px){ .cartoes{grid-template-columns:1fr 1fr;gap:14px} }
@media (min-width:980px){ .cartoes{grid-template-columns:1fr 1fr 1fr} }

.cartao{background:var(--surface);border:1px solid var(--line);
  border-radius:var(--r);padding:16px 16px 14px;display:flex;
  flex-direction:column;gap:8px;text-decoration:none;color:inherit;
  transition:border-color .12s}
.cartao:hover{border-color:var(--verde)}
.cartao .onde{font-size:12.5px;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;color:var(--verde);font-family:"Poppins",sans-serif}
.cartao h3{font-size:18px;line-height:1.25;font-weight:600}
.cartao .medidas{display:flex;flex-wrap:wrap;gap:4px 14px;margin:2px 0 0;
  font-size:14px;color:var(--muted);font-variant-numeric:tabular-nums}
.cartao .medidas b{color:var(--body);font-weight:700}
.cartao .procedencia{margin-top:auto;padding-top:8px;border-top:1px solid var(--line-soft);
  font-size:12.5px;color:var(--faint)}
.cartao .procedencia b{color:var(--muted);font-weight:700}

/* ============================ FILTROS/CHIPS ============================= */
.filtros{margin:20px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.chip{font-family:"Poppins",sans-serif;font-size:13.5px;font-weight:600;
  color:var(--body);background:var(--surface);border:1.5px solid var(--line);
  border-radius:999px;padding:7px 14px;cursor:pointer;text-decoration:none}
.chip:hover{border-color:var(--verde)}
.chip[aria-pressed="true"]{background:var(--verde);border-color:var(--verde);
  color:var(--sobre-verde)}
.chip .qtd{font-weight:400;opacity:.75;margin-left:5px;font-variant-numeric:tabular-nums}

/* ============================== NÚMEROS ================================= */
.numeros{margin:22px 0 0;display:grid;gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:var(--r);overflow:hidden;
  grid-template-columns:1fr 1fr}
@media (min-width:760px){ .numeros{grid-template-columns:repeat(4,1fr)} }
.numeros div{background:var(--surface);padding:18px 16px}
.numeros .num{font-size:clamp(26px,4vw,34px);font-weight:700;color:var(--verde);
  font-variant-numeric:tabular-nums;line-height:1.1}
.numeros .leg{margin:6px 0 0;font-size:13.5px;color:var(--muted)}

/* ========================== LISTAS DE LUGAR ============================= */
.lugares{margin:22px 0 0;display:grid;gap:10px;grid-template-columns:1fr}
@media (min-width:760px){ .lugares{grid-template-columns:1fr 1fr} }
.lugar{display:flex;align-items:baseline;gap:12px;background:var(--surface);
  border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;
  text-decoration:none;color:inherit}
.lugar:hover{border-color:var(--verde)}
.lugar .nome{font-family:"Poppins",sans-serif;font-weight:600;font-size:16px;
  color:var(--ink)}
.lugar .qtd{margin-left:auto;font-size:13.5px;color:var(--muted);
  font-variant-numeric:tabular-nums;flex-shrink:0}

/* =========================== CABEÇO DE PÁGINA =========================== */
.cabeco{background:var(--surface);border-bottom:1px solid var(--line);
  padding:36px 0 32px}
.cabeco h1{font-size:clamp(26px,5vw,42px);line-height:1.1;font-weight:700;
  margin:12px 0 0}
.cabeco .resumo{margin:14px 0 0;font-size:17.5px;color:var(--body);max-width:60ch}
.cabeco .migalha{font-size:13.5px;color:var(--muted);margin:0}
.cabeco .migalha a{color:var(--muted);text-decoration:none}
.cabeco .migalha a:hover{color:var(--verde)}
.cabeco .migalha span{color:var(--faint);margin:0 6px}

/* ========================= O ESSENCIAL (setor) ========================== */
.essencial{margin:22px 0 0;display:grid;gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:var(--r);overflow:hidden;
  grid-template-columns:1fr}
@media (min-width:760px){ .essencial{grid-template-columns:1fr 1fr} }
.essencial>div{background:var(--surface);padding:16px 18px}
.essencial .k{font-size:12px;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;color:var(--muted);font-family:"Poppins",sans-serif}
.essencial .v{margin:6px 0 0;font-size:16px;color:var(--ink)}
.essencial .v a{font-weight:600}
.essencial .det{margin:4px 0 0;font-size:13.5px;color:var(--muted)}

/* tabela de tarifas reduzida */
.tarifas{margin:8px 0 0;width:100%;border-collapse:collapse;font-size:15px}
.tarifas td{padding:6px 0;border-top:1px solid var(--line-soft);color:var(--body)}
.tarifas td:last-child{text-align:right;font-variant-numeric:tabular-nums;
  color:var(--ink);font-weight:600;white-space:nowrap}
.tarifas tr:first-child td{border-top:0}

/* ============================== RODAPÉ ================================== */
footer.rodape{margin-top:48px;background:var(--surface);
  border-top:1px solid var(--line);padding:34px 0 40px}
footer.rodape .wrap{display:flex;flex-wrap:wrap;gap:18px 40px;align-items:center}
footer.rodape img{height:26px;width:auto}
:root[data-theme="dark"] footer.rodape img,
:root:not([data-theme="light"]) footer.rodape img{
  filter:brightness(0) invert(1) sepia(.25) saturate(3) hue-rotate(83deg)}
@media (prefers-color-scheme:light){
  :root:not([data-theme="dark"]) footer.rodape img{filter:none}}
footer.rodape p{margin:0;font-size:13.5px;color:var(--muted);max-width:56ch}
footer.rodape nav{display:flex;gap:16px;margin-left:auto}
footer.rodape nav a{font-size:13.5px;color:var(--muted);text-decoration:none}
footer.rodape nav a:hover{color:var(--verde)}

/* ============================ UTILITÁRIOS =============================== */
.aviso-vazio{margin:26px 0 0;background:var(--aviso-suave);color:var(--ink);
  border-radius:var(--r);padding:16px 18px;font-size:15px}
[hidden]{display:none!important}
.pular{position:absolute;left:-9999px;top:0;background:var(--verde);
  color:var(--sobre-verde);padding:10px 16px;border-radius:var(--r-p);z-index:99}
.pular:focus{left:12px;top:12px}
