/* Destinei · site institucional — usa tokens/base/components */
*{box-sizing:border-box}
body{font-family:var(--font-body);color:var(--color-ink);background:var(--color-bg)}
.wrap{max-width:var(--container-max);margin-inline:auto;padding-inline:var(--space-8)}
@media(max-width:640px){.wrap{padding-inline:var(--space-4)}}
img{display:block;max-width:100%}
h1,h2,h3{font-family:var(--font-display);color:var(--color-ink);margin:0}
.eyebrow{font:700 var(--text-xs)/1 var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary)}
.eyebrow--light{color:rgb(255 255 255 / .85)}
.bloco{padding-block:var(--space-24)}
.bloco--alt{background:var(--color-bg-alt)}
@media(max-width:768px){.bloco{padding-block:var(--space-16)}}
.sec-head{max-width:52ch;margin-bottom:var(--space-12)}
.sec-head h2{font-size:clamp(1.6rem,3.5vw,2.25rem);line-height:1.15;margin:var(--space-3) 0}
.sec-head p{font-size:var(--text-body);color:var(--color-ink-soft);line-height:1.6;margin:0}
.grad{background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent}

/* Header — componente .header vem de css/components.css (DS · seção 10).
   Aqui só o encaixe: o vidro flutua SOBRE o hero da página. */
.header{max-width:calc(var(--container-max) + var(--space-8) * 2);margin-inline:auto;margin-bottom:calc(-1 * (var(--header-h) + var(--space-4)))}
@media(max-width:1264px){.header{margin-inline:var(--space-4)}}
main > section:first-child > .wrap{padding-top:calc(var(--header-h) + var(--space-4) + var(--space-6))}

/* Botões grandes */
.btn-lg{display:inline-flex;align-items:center;gap:10px;font:700 1rem/1 var(--font-display);padding:16px 26px;border-radius:var(--radius-sm);min-height:54px;cursor:pointer;transition:var(--ease)}
.btn-lg--primary{background:var(--grad-action);color:#fff;border:none;box-shadow:var(--shadow-cta)}
.btn-lg--primary:hover{transform:var(--lift);box-shadow:var(--shadow-cta-hover);text-decoration:none}
.btn-lg--ghost{background:var(--color-bg);color:var(--color-primary);border:2px solid var(--color-primary)}
.btn-lg--ghost:hover{background:var(--color-secondary-soft);text-decoration:none;transform:var(--lift)}
.btn-lg--light{background:#fff;color:var(--color-primary);border:none;box-shadow:var(--shadow-2)}
.btn-lg--light:hover{transform:var(--lift);box-shadow:var(--shadow-3);text-decoration:none}
.btn-wpp{display:inline-flex;align-items:center;gap:8px;font:700 .9375rem/1 var(--font-display);color:#fff !important;background:var(--grad-action);border-radius:var(--radius-sm);padding:12px 20px;box-shadow:var(--shadow-cta);transition:var(--ease)}
.btn-wpp:hover{transform:var(--lift);box-shadow:var(--shadow-cta-hover);text-decoration:none}
/* Ícone do WhatsApp — SVG inline (de whatsapp.svg), cor herdada do texto do CTA */
.ico-wa{width:22px;height:22px;flex:0 0 auto}
.header__cta .ico-wa{width:20px;height:20px}
.btn-wpp .ico-wa{width:20px;height:20px}

/* Hero — carrossel de fundo (Opção A: scrim lateral, conteúdo à esquerda) */
.hero-site{position:relative;isolation:isolate;overflow:hidden;background:var(--color-ink);border-bottom:1px solid var(--color-border)}
.hero-site__bg{position:absolute;inset:0;z-index:0}
.hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1.1s ease}
.hero-slide.is-active{opacity:1}
.hero-site__scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgb(20 36 59 / .88) 0%,rgb(20 36 59 / .58) 45%,rgb(20 36 59 / .10) 80%)}
.hero-site__scrim::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgb(20 36 59 / .30) 0%,rgb(20 36 59 / 0) 28%)}
.hero-site__wrap{position:relative;z-index:2;min-height:clamp(560px,82vh,780px);display:flex;flex-direction:column;justify-content:center}
.hero-site__in{max-width:56ch;color:#fff;padding-block:var(--space-16)}
.hero-site h1{color:#fff;font-weight:800;font-size:clamp(2.5rem,6vw,4rem);line-height:1.05;letter-spacing:-.02em;margin:0 0 var(--space-6)}
.hero-site .grad{background:linear-gradient(90deg,#8AD4FF,#00A0F0);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-site .lead{font-size:clamp(1.05rem,2vw,1.3rem);line-height:1.6;color:rgb(255 255 255 / .92);max-width:46ch;margin-bottom:var(--space-8)}
.hero-site__cta{display:flex;flex-wrap:wrap;gap:var(--space-4)}
/* Dots — alinhados ao conteúdo, abaixo dos CTAs */
.hero-site__dots{display:flex;gap:10px;margin-top:var(--space-8)}
.hero-dot{width:36px;height:5px;padding:0;border:none;border-radius:999px;background:rgb(255 255 255 / .4);cursor:pointer;transition:var(--ease)}
.hero-dot:hover{background:rgb(255 255 255 / .7)}
.hero-dot.is-active{background:#fff}
.hero-dot:focus-visible{outline:2px solid #fff;outline-offset:3px}
/* Setas — só desktop */
.hero-site__nav{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:48px;height:48px;display:none;align-items:center;justify-content:center;border-radius:999px;border:1px solid rgb(255 255 255 / .4);background:rgb(20 36 59 / .35);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fff;cursor:pointer;transition:var(--ease)}
.hero-site__nav:hover{background:rgb(20 36 59 / .6);border-color:rgb(255 255 255 / .7)}
.hero-site__nav--prev{left:var(--space-6)}
.hero-site__nav--next{right:var(--space-6)}
@media(min-width:900px){.hero-site__nav{display:inline-flex}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}}

/* Grid Melhores destinos — usa o componente .card-destino (DS) */
.destaques-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-6)}
@media(max-width:1024px){.destaques-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.destaques-grid{grid-template-columns:1fr}}
/* Rodapé do card: rótulo em 1 linha própria; preço + CTA na linha de baixo */
.destaques-grid .card-destino__footer{flex-direction:column;align-items:stretch;gap:6px}
.destaques-grid .card-destino__ancora{white-space:nowrap}
.card-destino__linha{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}
.destaques-grid .card-destino__preco{font-size:1.125rem;white-space:nowrap}
.card-destino__linha .dcard__cta{white-space:nowrap;font-size:.8125rem;gap:4px}
.card-destino__linha .dcard__cta svg{width:14px;height:14px}
/* Título e subtítulo em 1 linha só (nomes longos como "Chapada dos Veadeiros") */
.destaques-grid .card-destino__titulo{font-size:1.0625rem;-webkit-line-clamp:1;line-clamp:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.destaques-grid .card-destino__meta{font-size:.8125rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Grid de experiências */
.exp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-6)}
@media(max-width:1024px){.exp-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.exp-grid{grid-template-columns:1fr}}
.exp-card{display:flex;flex-direction:column;gap:8px;background:var(--tile);color:#fff;border-radius:var(--radius-lg);padding:var(--space-6);min-height:210px;box-shadow:var(--shadow-2);transition:var(--ease);position:relative;overflow:hidden}
.exp-card:hover{transform:var(--lift-card);box-shadow:var(--shadow-3);text-decoration:none}
.exp-card__icon{width:52px;height:52px;border-radius:var(--radius-md);background:rgb(255 255 255 / .16);display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:auto}
.exp-card__tagline{font:700 11px/1 var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:rgb(255 255 255 / .82)}
.exp-card__nome{font:800 1.25rem/1.2 var(--font-display);color:#fff}
.exp-card__link{display:inline-flex;align-items:center;gap:6px;font:700 .875rem/1 var(--font-display);color:#fff;margin-top:4px}

/* Grid de regiões (chips) */
.reg-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-3)}
@media(max-width:900px){.reg-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.reg-grid{grid-template-columns:repeat(2,1fr)}}
.reg-chip{display:flex;align-items:center;gap:8px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:14px 16px;font-size:var(--text-sm);color:var(--color-ink);box-shadow:var(--shadow-1);transition:var(--ease)}
.reg-chip:hover{border-color:var(--color-primary);transform:var(--lift);text-decoration:none;color:var(--color-primary)}
.reg-chip strong{font-family:var(--font-display);color:var(--color-primary)}
.reg-grid--nav{margin-top:var(--space-8)}

/* Sobre */
.sobre{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-16);align-items:center}
.sobre__txt h2{font-size:clamp(1.6rem,3.5vw,2.25rem);line-height:1.15;margin:var(--space-3) 0 var(--space-5)}
.sobre__txt p{font-size:var(--text-body);color:var(--color-ink-soft);line-height:1.7;margin-bottom:var(--space-4);max-width:52ch}
.sobre__txt .btn-lg{margin-top:var(--space-4)}
.sobre__cards{display:flex;flex-direction:column;gap:var(--space-4)}
.mini{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-1)}
.mini__n{font:800 13px/1 var(--font-display);color:#fff;background:var(--grad-action);width:34px;height:34px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-3)}
.mini h3{font-size:1.05rem;margin-bottom:6px}
.mini p{font-size:var(--text-sm);color:var(--color-ink-soft);line-height:1.55;margin:0}
@media(max-width:860px){.sobre{grid-template-columns:1fr;gap:var(--space-8)}}

/* CTA faixa */
.cta-faixa{background:var(--color-ink);color:#fff;text-align:center;padding-block:var(--space-24)}
.cta-faixa h2{color:#fff;font-size:clamp(1.75rem,4vw,2.5rem);line-height:1.15;margin-bottom:var(--space-8)}

/* Hero de categoria */
.cat-hero{background:var(--tile);color:#fff}
.cat-hero__in{padding-block:var(--space-24);max-width:60ch}
.cat-hero__icon{width:64px;height:64px;border-radius:var(--radius-lg);background:rgb(255 255 255 / .16);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-5)}
.cat-hero h1{color:#fff;font-size:clamp(2.25rem,5vw,3.25rem);line-height:1.08;margin:var(--space-3) 0 var(--space-5)}
.cat-hero p{font-size:clamp(1.05rem,2vw,1.25rem);line-height:1.6;color:rgb(255 255 255 / .9);margin:0 0 var(--space-6)}
.cat-hero__count{display:inline-block;font:700 12px/1 var(--font-display);letter-spacing:.08em;text-transform:uppercase;background:rgb(255 255 255 / .18);border-radius:var(--radius-pill);padding:8px 16px}

/* Filtros */
.filtros{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-8)}
.fchip{font:700 var(--text-xs)/1 var(--font-display);min-height:42px;padding:10px 18px;border-radius:var(--radius-pill);background:var(--color-bg);color:var(--color-primary);border:1px solid var(--color-border);box-shadow:var(--shadow-1);cursor:pointer;transition:var(--ease)}
.fchip:hover{border-color:var(--color-primary);transform:translateY(-1px)}
.fchip.ativo{background:var(--grad-action);color:#fff;border-color:transparent;box-shadow:0 4px 12px rgb(0 100 180 / .25)}

/* Grid de destinos */
.dgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}
@media(max-width:820px){.dgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.dgrid{grid-template-columns:1fr}}
.dcard{display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-4);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-1);transition:var(--ease)}
.dcard:hover{box-shadow:var(--shadow-2);transform:var(--lift);border-color:var(--color-secondary-soft)}
.dcard__uf{font:700 11px/1 var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--color-ink-soft)}
.dcard__nome{font:800 1.2rem/1.2 var(--font-display);color:var(--color-ink);margin-top:8px}
.dcard__cta{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;font:700 .875rem/1 var(--font-display);color:var(--color-primary);border-bottom:2px solid var(--color-secondary);padding-bottom:3px;transition:var(--ease)}
.dcard__cta:hover{color:var(--color-primary-hover);border-color:var(--color-primary);text-decoration:none}
.vazio{margin-top:var(--space-8);color:var(--color-ink-soft);font-size:var(--text-body)}

.outras{display:flex;flex-wrap:wrap;gap:var(--space-3)}
.outras a{display:inline-flex;align-items:center;font:700 .875rem/1 var(--font-display);color:var(--color-primary);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-pill);padding:12px 18px;box-shadow:var(--shadow-1);transition:var(--ease)}
.outras a:hover{border-color:var(--color-primary);transform:var(--lift);text-decoration:none}

/* Regiões page */
.reg-hero{background:var(--grad-sky);border-bottom:1px solid var(--color-border)}
.reg-hero .wrap{padding-block:var(--space-16)}
.reg-hero h1{font-size:clamp(2rem,4.5vw,3rem);line-height:1.1;margin:var(--space-3) 0 var(--space-4)}
.reg-hero .lead{font-size:1.15rem;color:var(--color-ink-soft);max-width:48ch;margin:0}
.uf-bloco{padding-block:var(--space-16);border-bottom:1px solid var(--color-border);scroll-margin-top:80px}
.uf-head{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-8)}
.uf-sigla{font:800 14px/1 var(--font-display);color:#fff;background:var(--grad-action);border-radius:var(--radius-sm);padding:10px 12px}
.uf-head h2{font-size:clamp(1.5rem,3vw,2rem)}
.uf-count{font:700 12px/1 var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--color-ink-soft);margin-left:auto}

/* Rodapé */
.rodape{background:var(--color-ink);color:rgb(255 255 255 / .7);padding-block:var(--space-16) var(--space-8)}
.rodape__top{display:grid;grid-template-columns:2fr 1.2fr 1.2fr;gap:var(--space-12);padding-bottom:var(--space-12);border-bottom:1px solid rgb(255 255 255 / .14)}
.rodape__marca{display:flex;flex-direction:column;align-items:flex-start}
.rodape__marca img{width:150px;filter:brightness(0) invert(1);margin-bottom:var(--space-4)}
.rodape__marca p{font-size:var(--text-sm);line-height:1.6;max-width:40ch;margin-bottom:var(--space-5)}
.rodape__links{display:flex;flex-direction:column;gap:10px;font-size:var(--text-sm)}
.rodape__tit{font:700 11px/1 var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--color-secondary);margin-bottom:4px}
.rodape__links a,.rodape__marca a.btn-wpp{color:rgb(255 255 255 / .8)}
.rodape__links a:hover{color:#fff}
.rodape__insta{display:inline-flex;align-items:center;gap:8px;margin-top:14px;font:600 var(--text-sm)/1 var(--font-display);color:rgb(255 255 255 / .8);transition:var(--ease)}
.rodape__insta:hover{color:#fff;text-decoration:none}
.rodape__insta svg{width:20px;height:20px}
.rodape__base{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:space-between;padding-top:var(--space-6);font-size:13px;color:rgb(255 255 255 / .5)}
@media(max-width:768px){.rodape__top{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.rodape__top{grid-template-columns:1fr}}

/* ===== Mapa interativo ===== */
.mapbox{margin-top:var(--space-4)}
.mapfiltros{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-8);justify-content:center}
.mfchip{font:700 var(--text-xs)/1 var(--font-display);min-height:40px;padding:9px 16px;border-radius:var(--radius-pill);background:var(--color-bg);color:var(--color-primary);border:1px solid var(--color-border);box-shadow:var(--shadow-1);cursor:pointer;transition:var(--ease)}
.mfchip:hover{border-color:var(--color-primary);transform:translateY(-1px)}
.mfchip.ativo{background:var(--grad-action);color:#fff;border-color:transparent;box-shadow:0 4px 12px rgb(0 100 180 / .25)}
.mapwrap{position:relative;max-width:620px;margin-inline:auto}
#mapa-svg{width:100%;height:auto;display:block;overflow:visible}
.mapa-br{fill:var(--color-bg-alt);stroke:var(--color-primary);stroke-width:1.4;stroke-linejoin:round;filter:drop-shadow(0 8px 24px rgb(20 36 59 / .10))}
.mdot{fill:var(--color-primary);stroke:#fff;stroke-width:1.4;cursor:pointer;transition:opacity .25s ease,r .15s ease,fill .2s ease}
.mdot:hover,.mdot:focus{fill:var(--color-secondary);r:6.5;outline:none}
.mdot.off{opacity:.10;pointer-events:none}
.mdot.on{fill:var(--color-secondary)}
.maptip{position:absolute;z-index:20;pointer-events:none;background:var(--color-ink);color:#fff;border-radius:var(--radius-md);padding:10px 14px;box-shadow:var(--shadow-3);min-width:160px;transform:translate(-50%,-115%);transition:opacity .12s ease}
.maptip__nome{font:800 .95rem/1.2 var(--font-display)}
.maptip__uf{font-size:12px;color:rgb(255 255 255 / .7);margin-top:2px}
.maptip__cta{display:inline-flex;align-items:center;gap:6px;margin-top:8px;font:700 12px/1 var(--font-display);color:var(--color-secondary)}
.maptip::after{content:'';position:absolute;left:50%;bottom:-6px;transform:translateX(-50%);border:6px solid transparent;border-top-color:var(--color-ink);border-bottom:0}
.mapcount{text-align:center;font-size:var(--text-sm);color:var(--color-ink-soft);margin-top:var(--space-6)}
.mapa-alt{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:center;justify-content:center;margin-top:var(--space-8)}
.link-lista{font:700 .9375rem/1 var(--font-display);color:var(--color-primary);border-bottom:2px solid var(--color-secondary);padding-bottom:3px}
.link-lista:hover{color:var(--color-primary-hover);text-decoration:none}
/* Mapa page */
.mapa-hero{background:var(--grad-sky);border-bottom:1px solid var(--color-border)}
.mapa-hero .wrap{padding-block:var(--space-16)}
.mapa-hero h1{font-size:clamp(2rem,4.5vw,3rem);line-height:1.1;margin:var(--space-3) 0 var(--space-4)}
.mapa-hero .lead{font-size:1.15rem;color:var(--color-ink-soft);max-width:52ch;margin:0}
.mleg-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-3);margin-top:var(--space-12)}
@media(max-width:900px){.mleg-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.mleg-grid{grid-template-columns:1fr}}
.mleg{display:flex;align-items:center;gap:10px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:12px 16px;font-size:var(--text-sm);color:var(--color-ink);box-shadow:var(--shadow-1);transition:var(--ease)}
.mleg:hover{border-color:var(--color-primary);transform:var(--lift);text-decoration:none;color:var(--color-primary)}
.mleg__dot{width:12px;height:12px;border-radius:50%;background:var(--grad-action);flex-shrink:0}
.mleg em{margin-left:auto;font-style:normal;font:700 12px/1 var(--font-display);color:var(--color-ink-soft)}
@media(prefers-reduced-motion:reduce){.mdot{transition:none}}
