/* JEX Fishing — próximas saídas, calendário de pesca, preço do day use, depoimentos e filtro de fotos */
.ex-muted{color:var(--fg-2);font-size:14px}
.claro .ex-muted{color:var(--muted)}
.ex-vazio{color:var(--fg-2)}

/* próximas saídas */
.ex-wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,2fr);gap:16px;align-items:stretch}
@media (max-width:900px){.ex-wrap{grid-template-columns:minmax(0,1fr)}}
.ex-count{border-radius:var(--r);padding:22px;display:flex;flex-direction:column;justify-content:center;gap:10px}
.ex-count p{margin:0;color:var(--fg-2);font-size:14px}
.ex-count p b{color:var(--fg)}
.ex-cd{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}
.ex-cd .ex-f{font:700 13px var(--body);letter-spacing:2px;text-transform:uppercase;color:var(--orange-2);width:100%}
.ex-n{display:flex;flex-direction:column;align-items:flex-start}
.ex-n b{font:800 clamp(44px,5vw,60px)/.9 var(--display);font-variant-numeric:tabular-nums;color:var(--fg)}
.ex-n small{font-size:12px;color:var(--fg-2);text-transform:uppercase;letter-spacing:1px}
.ex-prox{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px}
.ex-sai{display:flex;flex-direction:column;gap:8px;padding:18px;border-radius:var(--r);color:var(--fg);text-decoration:none;transition:transform .25s ease,border-color .25s,box-shadow .25s;will-change:transform}
.ex-sai:hover{border-color:var(--orange);box-shadow:0 18px 40px rgba(0,0,0,.35)}
.ex-sai.fem:hover{border-color:#E8558B;box-shadow:0 18px 40px rgba(232,85,139,.25)}
.ex-sai:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
.ex-dt{font:700 13px var(--body);letter-spacing:1.6px;text-transform:uppercase;color:var(--orange-2)}
.ex-sai b{font:800 24px/1.05 var(--display);text-transform:uppercase}
.ex-tag{align-self:flex-start;font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;background:rgba(232,85,139,.18);color:#FF9CC2}
.ex-bar{display:block;height:8px;border-radius:999px;background:rgba(255,255,255,.12);overflow:hidden;margin-top:auto}
.ex-bar i{display:block;height:100%;width:0;border-radius:0 4px 4px 0;background:var(--orange);transition:width 1.1s cubic-bezier(.2,.7,.2,1)}
.ex-sai.fem .ex-bar i{background:#E8558B}
.ex-left{font-weight:700;font-size:14px}.ex-left.cheia{color:var(--orange-2)}
.ex-go{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:var(--fg-2)}
.ex-go svg{width:16px;height:16px;transition:transform .2s}
.ex-sai:hover .ex-go{color:var(--orange-2)}.ex-sai:hover .ex-go svg{transform:translateX(4px)}

/* calendário */
.ex-meses{display:grid;grid-template-columns:repeat(12,minmax(56px,1fr));gap:6px;overflow-x:auto;padding:4px 2px 10px;scrollbar-width:thin;scroll-snap-type:x proximity}
.ex-meses button{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 4px 10px;border-radius:14px;border:1px solid var(--glass-line);background:rgba(255,255,255,.04);color:var(--fg);font:700 14px var(--body);text-transform:uppercase;letter-spacing:1px;cursor:pointer;scroll-snap-align:center;transition:background .2s,border-color .2s,transform .2s}
.ex-meses button:hover{transform:translateY(-2px);border-color:var(--orange)}
.ex-meses button.fech{color:var(--fg-2);background:repeating-linear-gradient(135deg,rgba(255,255,255,.05) 0 3px,transparent 3px 9px)}
.ex-meses button[aria-selected="true"]{background:var(--orange);border-color:var(--orange);color:#12130F}
.ex-meses button[aria-selected="true"].fech{background:#5A2A1C;border-color:#A04A2A;color:#F2C9B8}
.ex-meses button:focus-visible{outline:3px solid var(--orange-2);outline-offset:2px}
.ex-meses em{position:absolute;top:-6px;right:-4px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#fff;color:#12130F;font:800 12px/20px var(--body);font-style:normal}
.ex-agua{display:inline-block;width:26px;height:14px;border-radius:3px;border:1px solid rgba(255,255,255,.35);background:linear-gradient(to top,var(--river) var(--h,50%),transparent var(--h,50%))}
.ex-agua.cheia{--h:95%}.ex-agua.vazante{--h:62%}.ex-agua.seca{--h:25%}.ex-agua.enchente{--h:55%}
.ex-meses button[aria-selected="true"] .ex-agua{border-color:rgba(0,0,0,.35)}
.ex-det{margin-top:8px;border-radius:var(--r);padding:clamp(18px,3vw,28px);display:grid;gap:12px;animation:exIn .35s both}
.ex-det-top{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}
.ex-det h3{font-size:clamp(34px,4vw,48px);margin:0}.ex-det h3 small{font-size:.5em;color:var(--fg-2)}
.ex-det h4{margin:6px 0 0;font:800 20px var(--display);text-transform:uppercase}
.ex-det p{margin:0}
.ex-st{font-size:13px;font-weight:700;padding:6px 14px;border-radius:999px}
.ex-st.ab{background:rgba(120,200,140,.16);color:#A8E6B7}.ex-st.fech{background:#5A2A1C;color:#F2C9B8}
.ex-fase{display:flex;gap:12px;align-items:center;color:var(--fg-2)}.ex-fase b{color:var(--fg)}
.ex-lista{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ex-lista a{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid var(--glass-line);color:var(--fg);text-decoration:none}
.ex-lista a:hover{border-color:var(--orange)}
.ex-lista small{display:block;color:var(--fg-2)}
.ex-lista em{font-style:normal;font-weight:700;font-size:13px;white-space:nowrap}.ex-lista em.cheia{color:var(--orange-2)}
.ex-ctas{display:flex;flex-wrap:wrap;gap:10px}
.ex-ctas svg,.ex-res svg{width:18px;height:18px}
.ex-nota{font-size:12px;color:var(--fg-2)}

/* day use: preço na hora */
.ex-calc h3{margin:0 0 12px}
.ex-du{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}
@media (max-width:420px){.ex-du{grid-template-columns:minmax(0,1fr)}}
.ex-f{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600}
.ex-f input{min-height:46px;border-radius:12px;border:1px solid var(--glass-line);background:rgba(0,0,0,.25);color:var(--fg);padding:10px 12px;font:inherit;color-scheme:dark}
.ex-step{display:flex;align-items:center;gap:4px;border:1px solid var(--glass-line);border-radius:999px;padding:3px}
.ex-step button{width:40px;height:40px;border-radius:50%;border:0;background:rgba(255,255,255,.08);color:var(--fg);font-size:22px;cursor:pointer}
.ex-step button:hover:not(:disabled){background:var(--orange);color:#12130F}
.ex-step button:disabled{opacity:.35;cursor:default}
.ex-step output{min-width:34px;text-align:center;font:800 26px var(--display)}
.ex-tot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:6px 12px;margin:16px 0 8px;padding-top:14px;border-top:1px solid var(--glass-line)}
.ex-tot small{display:block;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:var(--fg-2)}
.ex-tot b{font:800 40px/1 var(--display);color:var(--orange-2);display:inline-block}
.ex-tot b.pop{animation:exPop .35s ease}
.ex-err{margin:0 0 10px;color:#F2B49B;font-size:14px}
.ex-res{width:100%;margin-bottom:8px}
.ex-res.off{opacity:.5}

/* depoimentos */
.ex-depo{align-items:start;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:14px;margin:0 0 28px}
.ex-q{margin:0;border-radius:var(--r);padding:20px;display:flex;flex-direction:column;gap:10px}
.ex-q-ph{display:block;border-radius:14px;overflow:hidden;aspect-ratio:16/10;margin:-6px -6px 4px}
.ex-q-ph img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.ex-q-ph:hover img{transform:scale(1.04)}
.ex-stars{color:var(--orange);letter-spacing:3px}.ex-stars i{font-style:normal;opacity:.25}
.ex-q blockquote{margin:0;font-size:16px;line-height:1.55}
.ex-q figcaption{font-size:14px;color:var(--fg-2)}.ex-q figcaption b{color:var(--fg)}

/* filtro de fotos */
.ex-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.ex-chips button{border:1px solid var(--glass-line);background:rgba(255,255,255,.04);color:var(--fg);border-radius:999px;padding:8px 14px;font:600 14px var(--body);cursor:pointer;min-height:40px;transition:background .2s,border-color .2s}
.ex-chips button small{opacity:.6;margin-left:2px}
.ex-chips button:hover{border-color:var(--orange)}
.ex-chips button[aria-pressed="true"]{background:var(--orange);border-color:var(--orange);color:#12130F}
.cap-item[hidden]{display:none!important}

/* cartões com movimento */
.cards .card{transition:transform .25s ease,box-shadow .25s}
.cards .card:hover{box-shadow:0 22px 48px rgba(0,0,0,.4)}

@keyframes exIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes exPop{0%{transform:scale(1)}40%{transform:scale(1.08)}100%{transform:scale(1)}}
@media (prefers-reduced-motion:reduce){.ex-bar i,.ex-sai,.ex-meses button,.ex-q-ph img,.cards .card{transition:none}.ex-det,.ex-tot b.pop{animation:none}}
