/* Fontes locais */
@font-face {
  font-family: 'Cerebri Sans Pro';
  src: url('fonts/cerebrisanspro-regular-webfont.woff2') format('woff2'),
       url('fonts/cerebrisanspro-regular-webfont.woff') format('woff');
  font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Cerebri Sans Pro';
  src: url('fonts/cerebrisanspro-bold-webfont.woff2') format('woff2'),
       url('fonts/cerebrisanspro-bold-webfont.woff') format('woff');
  font-weight: 700; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Cerebri Sans Pro';
  src: url('fonts/cerebrisanspro-extrabold-webfont.woff2') format('woff2'),
       url('fonts/cerebrisanspro-extrabold-webfont.woff') format('woff');
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Cerebri Sans Pro';
  src: url('fonts/cerebrisanspro-heavy-webfont.woff2') format('woff2'),
       url('fonts/cerebrisanspro-heavy-webfont.woff') format('woff');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

/* Vars + reset */
:root {
  --gold:#C99A62;
  --wine:#7E2420;
  --dark:#2E2E2E;
  --card:#1c1c1c;
  --light:#FFFFFF;
  --green:#4A5D47; /* adiciona esta linha */
}

*{ margin:0; padding:0; box-sizing:border-box; }
img{ max-width:100%; height:auto; display:block; }
a{ text-decoration:none; color:inherit; }
body{ font-family:'Cerebri Sans Pro', system-ui, -apple-system, Segoe UI, Roboto, sans-serif; background:var(--dark); color:var(--light); line-height:1.6; scroll-behavior:smooth; }

/* =======================
   HERO (corrigido p/ cross-fade .hero-bg)
   ======================= */
header.hero{
  position:relative;
  height:100vh;
  overflow:hidden;
  background:none !important;
}
header.hero::before{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,.25) 0%, rgba(0,0,0,.55) 60%, rgba(0,0,0,.8) 100%);
  z-index:2;
}
.hero-bg{
  position:absolute; inset:0;
  background-position:center; background-size:cover; background-repeat:no-repeat;
  opacity:0; transition:opacity 1s ease-in-out, transform 6s ease;
  transform:scale(1.04);
  will-change:opacity, transform;
  z-index:0;
}
.hero-bg.is-top{ opacity:1; transform:scale(1.0); }

/* conteúdo no topo */
header.hero .overlay{
  position:absolute; inset:0; z-index:3;
  display:grid; place-items:center; text-align:center; padding:2rem;
}
.logo-wrap{ display:flex; justify-content:center; align-items:center; }
.logo-wrap img{ max-width:220px; filter:drop-shadow(0 4px 16px rgba(0,0,0,.5)); }
header.hero h1{
  font-size:clamp(2.4rem, 3.8vw + 1rem, 4rem);
  color:var(--gold);
  letter-spacing:.5px;
  margin-top:1rem;
  line-height:1.05; /* ↓ aproxima as linhas do <br> */
}

header.hero p{ font-size:clamp(1rem, 1.1vw + .6rem, 1.35rem); opacity:.9; margin:.6rem 0 1.2rem; }
header.hero .cta{ display:inline-block; padding:.8rem 1.4rem; background:var(--gold); color:#2E2E2E; border-radius:10px; transition:transform .2s, background-color .3s, box-shadow .3s; box-shadow:0 6px 18px rgba(0,0,0,.25); }
header.hero .cta:hover{ transform:translateY(-2px); background:#B38F57; }

/* Secções */
section{ padding:4rem 2rem; text-align:center; }
.essencia h2, .tours h2{ font-size:2.2rem; margin-bottom:1rem; color:var(--gold); }

/* Lista de tours */
.tour-list{ display:flex; flex-wrap:wrap; gap:2rem; align-items:flex-start; margin-top:2rem; }
.tour-card{ flex:1 1 320px; min-width:280px; background:var(--card); border:1px solid rgba(255,255,255,.08); border-radius:14px; overflow:hidden; transition:transform .2s, box-shadow .2s; }
.tour-card:hover{ transform:translateY(-6px); box-shadow:0 10px 20px rgba(0,0,0,.55); }
.tour-trigger{ width:100%; display:flex; justify-content:space-between; align-items:center; background:transparent; color:var(--light); border:0; text-align:left; padding:1rem 1rem; cursor:pointer; }
.tour-trigger h3{ color:var(--gold); margin-bottom:.25rem; font-size:1.2rem; }
.tour-trigger .subtitle{ opacity:.85; font-size:.95rem; }
.tour-trigger:focus-visible{ outline:2px solid var(--gold); outline-offset:2px; }
.chevron{ width:12px; height:12px; border-right:2px solid var(--gold); border-bottom:2px solid var(--gold); transform:rotate(-45deg); transition:transform .3s; flex:0 0 auto; margin-left:1rem; }
.tour-card.active .chevron{ transform:rotate(45deg); }

/* Media wrapper da imagem */
.tour-media{ padding:.5rem 1rem 0; }
.tour-image{ display:block; width:100%; height:auto; border-radius:10px; box-shadow:0 4px 10px rgba(0,0,0,.35); aspect-ratio:16/9; object-fit:cover; object-position:center; margin:0; }

/* Conteúdo do acordeão */
.accordion-content{ max-height:0; overflow:hidden; opacity:0; transition:max-height .4s ease, opacity .3s ease, margin-top .2s ease; text-align:left; margin:0 1rem; }
.tour-card.active .accordion-content{ max-height:520px; overflow:auto; opacity:1; margin-top:1rem; margin-bottom:1rem; }
.tour-card .accordion-content::-webkit-scrollbar{ width:8px; }
.tour-card .accordion-content::-webkit-scrollbar-thumb{ background:#4a4a4a; border-radius:8px; }
.tour-card .accordion-content::-webkit-scrollbar-thumb:hover{ background:#6a6a6a; }

/* Tipografia interior */
.copy{ max-width:68ch; margin:0 auto; font-size:1.02rem; line-height:1.7; color:#dddddd; hyphens:auto; }
.copy p{ margin:0 0 1rem; }
.copy .lead{ font-size:1.12rem; color:#eee; }
@media (min-width:900px){
  .copy .lead:first-letter{
    float:left; font-weight:700; font-size:3rem; line-height:1; margin:.15rem .35rem 0 0; color:var(--gold);
  }
}
.kicker{ text-transform:uppercase; letter-spacing:.06em; color:var(--gold); font-weight:700; font-size:.9rem; margin:.2rem 0 .6rem; }
.h4{ font-size:1.05rem; font-weight:800; color:#fff; margin:1.1rem 0 .4rem; }
.fact-list{ list-style:none; padding:0; margin:.2rem 0 1rem; }
.fact-list li{ display:flex; gap:.6rem; align-items:flex-start; padding:.15rem 0; }
.fact-list li::before{ content:"▸"; color:var(--gold); margin-top:.15rem; }
/* garantir alinhamento à esquerda nas listas de factos */
.fact-list,
.fact-list li{
  text-align: left;
}


/* HR suave */
.soft{ border:0; border-top:1px solid rgba(255,255,255,.1); margin:1rem 0; }

/* Itinerário bonito */
.itinerary{ list-style:none; margin:14px 0 0 0; padding:0; }
.itinerary li{ display:grid; grid-template-columns: 90px 1fr; gap:12px; align-items:start; padding:.25rem 0; }
.itinerary li time{ font-weight:700; color:var(--gold); white-space:nowrap; font-variant-numeric:tabular-nums; }
.itinerary li span{ color:#dddddd; }

/* Testemunhos e Rodapé */
.testemunhos{ background:var(--wine); color:var(--light); display:grid; grid-auto-flow:column; overflow-x:auto; gap:2rem; padding:2rem; scroll-snap-type:x mandatory; }
.testemunhos blockquote{ min-width:300px; font-style:italic; scroll-snap-align:start; }
footer{ background:#1A1A1A; padding:2rem; text-align:center; border-top:1px solid rgba(255,255,255,.08); }
footer p{ margin-bottom:1rem; color:var(--gold); }
footer nav a{ color:var(--light); margin:0 1rem; transition:color .3s; }
footer nav a:hover{ color:var(--gold); }

/* Responsividade */
@media (max-width:1024px){ header.hero h1{ font-size:3.2rem; } }
@media (max-width:768px){
  header.hero h1{ font-size:2.5rem; }
  header.hero p{ font-size:1rem; }
  .testemunhos{ display:block; }
  .testemunhos blockquote{ margin-bottom:1rem; }
  .itinerary li{ grid-template-columns: 72px 1fr; }
}

/* --- Layout utilitários --- */
.container{ max-width:1100px; margin:0 auto; padding:0 16px; }
.container-narrow{ max-width:840px; margin:0 auto; padding:0 16px; }
.section{ padding:3rem 0; }
.section-title{ text-align:center; color:var(--gold); margin-bottom:1rem; }

/* --- Topbar com logo --- */
/* REMOVER MENU (global) */
.topbar{ display:none !important; }

/* --- Hero das páginas internas --- */
.page-hero{ position:relative; min-height:60vh; background:center/cover no-repeat; display:grid; place-items:center; text-align:center; }
.page-hero::before{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.75)); }
.page-hero .inner{ position:relative; z-index:1; padding:3rem 1rem; }
.page-hero h1{ color:var(--gold); font-size:clamp(2.2rem,3.2vw + 1rem,3.6rem); }
.page-hero p{ opacity:.95; margin-top:.5rem; }

/* --- Subnav âncoras --- */
.subnav{ background:#1b1b1b; border-top:1px solid rgba(255,255,255,.06); border-bottom:1px solid rgba(255,255,255,.06); }
.subnav .container{ display:flex; gap:1.5rem; justify-content:center; padding:.6rem 16px; }
.subnav a{ opacity:.9; }

/* --- Galeria grid (para placeholders) --- */
.grid { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); align-items: stretch; }
.ph { background: #0f0f0f; border: 1px dashed rgba(255, 255, 255, .12); border-radius: 10px; aspect-ratio: 4 / 3; display: flex; align-items: center; justify-content: center; color: rgba(255, 255, 255, .6); font-size: .95rem; text-align: center; }

/* --- Form (reforço) --- */
.rf{ max-width:900px; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.rf .full{ grid-column:1/-1; }
.rf input,.rf textarea,.rf select{ width:100%; background:#111; border:1px solid rgba(255,255,255,.12); color:#fff; border-radius:10px; padding:.8rem 1rem; }
.rf textarea{ min-height:140px; resize:vertical; }
.rf button{ background:var(--gold); color:#2E2E2E; border:0; border-radius:10px; padding:.9rem 1.2rem; cursor:pointer; }
.rf button:hover{ filter:brightness(.95); }
.alert{ max-width:900px; margin:0 auto 1rem auto; padding:.9rem 1rem; border-radius:10px; border:1px solid; }
.alert.ok{ color:#c6f6d5; background:#093; border-color:#3c6; }
.alert.err{ color:#ffd4d4; background:#5a1212; border-color:#b44; }

/* Botão genérico dourado (fora do hero) */
.btn{
  display:inline-block; padding:.75rem 1.1rem; border-radius:10px;
  background: var(--gold); color: var(--dark); font-weight:700; text-align:center;
  box-shadow:0 6px 18px rgba(0,0,0,.25);
  transition:transform .2s ease, filter .2s ease, box-shadow .3s ease;
}
.btn:hover{ transform:translateY(-2px); filter:brightness(.96); box-shadow:0 10px 22px rgba(0,0,0,.35); }
.btn-sm{ padding:.55rem .9rem; border-radius:8px; font-weight:700; }

/* ===== Slideshow / Galeria ===== */
.slider{ position:relative; max-width:1100px; margin:0 auto; }
.slider-viewport{ position:relative; overflow:hidden; border-radius:12px; box-shadow:0 10px 24px rgba(0,0,0,.35); }
.slides{ display:flex; transition:transform .5s ease; }
.slide{ min-width:100%; aspect-ratio: 16/9; background:#0f0f0f; display:flex; align-items:center; justify-content:center; }
.slide img{ width:100%; height:100%; object-fit:cover; display:block; }
.slide.ph{ border:1px dashed rgba(255,255,255,.12); color:rgba(255,255,255,.6); font-size:1rem; }

/* setas */
.slide-prev,.slide-next{
  position:absolute; top:50%; transform:translateY(-50%);
  border:0; background:rgba(0,0,0,.45); color:var(--light);
  width:42px; height:42px; border-radius:50%;
  display:grid; place-items:center; cursor:pointer;
  box-shadow:0 6px 18px rgba(0,0,0,.35);
}
.slide-prev{ left:10px; } .slide-next{ right:10px; }
.slide-prev:hover,.slide-next:hover{ background:rgba(0,0,0,.65); }

/* dots */
.slider-dots{ display:flex; gap:.5rem; justify-content:center; margin-top:.8rem; }
.slider-dots button{
  width:9px; height:9px; border-radius:50%;
  border:1px solid rgba(255,255,255,.5); background:transparent; cursor:pointer;
}
.slider-dots button[aria-current="true"]{ background:var(--gold); border-color:var(--gold); }

/* ===== Layout tours: texto + painel (itinerário / formulário) ===== */
.container-split{
  display:grid;
  gap:2rem;
  align-items:start;
  grid-template-columns: 2fr 1fr;
}
@media (max-width: 980px){
  .container-split{ grid-template-columns: 1fr; }
}
.panel{
  background: var(--card);
  border-radius: 14px;
  padding: 1.6rem;
  box-shadow: 0 10px 24px rgba(0,0,0,.35);
}
.panel .section-title{ margin: .25rem 0 1rem 0; text-align:center; color: var(--gold); }
.form-panel .rf{ margin-top:1rem; }
.form-panel .rf > div{ display:flex; flex-direction:column; gap:.45rem; }
.form-panel .rf > div.full{ grid-column:1/-1; }
.form-panel .rf button{
  background: var(--gold); color: var(--dark);
  border:0; border-radius:10px; padding:.7rem 1.2rem; font-weight:700; cursor:pointer;
  box-shadow:0 6px 18px rgba(0,0,0,.25);
  transition:transform .2s ease, filter .2s ease, box-shadow .3s ease;
}
.form-panel .rf button:hover{ transform:translateY(-2px); filter:brightness(.96); box-shadow:0 10px 22px rgba(0,0,0,.35); }

/* Itinerário — timeline */
.itinerary { position: relative; margin: 0; padding: 0 0 0 20px; list-style: none; border-left: 2px solid rgba(201, 151, 85, 0.4); }
.itinerary li { position: relative; margin: 1.5rem 0; padding-left: 1rem; display: flex; justify-content: flex-start; align-items: flex-start; gap: 1.5rem; }
.itinerary li::before { content: ''; position: absolute; left: -10px; top: 8px; width: 12px; height: 12px; background: #c99755; border-radius: 50%; box-shadow: 0 0 6px rgba(201,151,85,.6); }
.itinerary time { flex: 0 0 70px; text-align: right; font-weight: 600; color: #c99755; }
.itinerary span { flex: 1; font-size: 1rem; font-weight: 500; color: #eee; }

.testemunhos { background: var(--wine); color: var(--light); padding: 4rem 2rem; text-align: center; position: relative; }
.testemunhos-slider { position: relative; overflow: hidden; max-width: 720px; margin: 2rem auto 0; }
.testemunho { opacity: 0; transform: translateX(40px); transition: opacity .6s ease, transform .6s ease; position: absolute; inset: 0; display: grid; place-items: center; padding: 0 1rem; }
.testemunho.active { opacity: 1; transform: translateX(0); position: relative; }
.testemunho blockquote { font-style: italic; font-size: 1.15rem; line-height: 1.6; position: relative; padding: 1.5rem 1rem; }
.testemunho blockquote::before { content: "“"; font-size: 3rem; color: var(--gold); position: absolute; left: -10px; top: -10px; }
.testemunho footer { margin-top: 1rem; font-weight: 700; color: var(--gold); }
.testemunhos-dots { display: flex; justify-content: center; gap: .6rem; margin-top: 1.5rem; }
.testemunhos-dots button { width: 10px; height: 10px; border-radius: 50%; border: 1px solid rgba(255,255,255,.6); background: transparent; cursor: pointer; }
.testemunhos-dots button.active { background: var(--gold); border-color: var(--gold); }

.usp { background: var(--dark); color: var(--light); padding: 3rem 2rem; text-align: center; }
.usp-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 2rem; }
.usp .icon { color: var(--gold); margin-bottom: .8rem; }
.usp p { font-size: 1rem; font-weight: 500; color: var(--light); }

/* ===== Mini Testemunhos (painel) ===== */
.mini-testimonials{ margin-top: 1.25rem; padding-top: 1.2rem; padding-bottom: 1.2rem; background: var(--green); color: var(--light); }
.mini-testimonials .section-title{ margin-bottom: .6rem; color: var(--gold); }
.mt-viewport{ position: relative; min-height: 92px; }
.mt-item{ display: none; opacity: 0; transition: opacity .35s ease; text-align: left; }
.mt-item.is-active{ display: block; opacity: 1; }
.mt-item blockquote{ color: #eee; font-style: italic; line-height: 1.6; }
.mt-item figcaption{ margin-top: .5rem; color: rgba(255,255,255,.8); font-weight: 600; }
.mt-dots{ display: flex; gap: .4rem; justify-content: center; margin-top: .7rem; }
.mt-dots button{ width: 8px; height: 8px; border-radius: 50%; border: 1px solid rgba(255,255,255,.45); background: transparent; cursor: pointer; }
.mt-dots button[aria-current="true"]{ background: var(--gold); border-color: var(--gold); }

/* Coluna direita a empilhar painéis */
.side-stack{ display: flex; flex-direction: column; gap: 16px; align-self: start; }
@media (max-width: 980px){ .side-stack{ gap: 12px; } }

/* Ajustes Essência/Tours/Home */
.essencia { text-align: center; padding-bottom: 1.5rem; }
.essencia .section-title { margin-bottom: 1.5rem; }
.essencia .copy { max-width: 820px; margin: 0 auto; font-size: 1.1rem; line-height: 1.7; color: #ddd; }
.tours { padding-top: 1.5rem; }
footer { background:#1A1A1A; padding:2rem; text-align:center; border-top:1px solid rgba(255,255,255,.08); margin-top:3rem; }
footer .brand { font-weight:700; color: var(--gold); margin-bottom:.5rem; }
footer .contact-links { font-size:1rem; color: var(--light); }
footer .contact-links a { color: var(--light); text-decoration:none; margin:0 .4rem; transition:color .3s; }
footer .contact-links a:hover { color: var(--gold); }
footer .contact-links .divider { color: rgba(255,255,255,.4); margin: 0 .4rem; }
footer .copy { margin-top:1rem; font-size:.85rem; color: rgba(255,255,255,.6); }
.footer-contact a { display: inline-flex; align-items: center; gap: .4rem; color: var(--light); text-decoration: none; margin: 0 .5rem; transition: color .25s ease; }
.footer-contact a:hover { color: var(--gold); }
.footer-contact svg { width: 18px; height: 18px; stroke-width: 1.5; }

/* =========================
   NOVO: Botão flutuante "Reservar" (tours)
   ========================= */
.btn-reservar-fixed{
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 1000;
  padding: .9rem 1.15rem;
  border-radius: 12px;
  background: var(--gold);
  color: var(--dark);
  font-weight: 800;
  box-shadow: 0 12px 28px rgba(0,0,0,.35);
  transition: transform .15s ease, filter .2s ease, box-shadow .25s ease;
}
.btn-reservar-fixed:hover{ transform: translateY(-2px); filter:brightness(.96); box-shadow: 0 16px 32px rgba(0,0,0,.45); }
@supports (padding:max(0px)) {
  .btn-reservar-fixed{ bottom: max(18px, env(safe-area-inset-bottom)); right: max(18px, env(safe-area-inset-right)); }
}
@media (max-width:740px){
  .btn-reservar-fixed{ padding: .85rem 1.05rem; font-size: .95rem; border-radius: 10px; }
}

/* =========================
   NOVO: Asterisco obrigatório e nota do formulário
   ========================= */
.label-required .req-star{
  color: var(--gold);
  margin-left: 4px;
  font-weight: 900;
}
.form-note{
  margin-top: .8rem;
  font-size: .95rem;
  color: rgba(255,255,255,.9);
  text-align: left;
}
.form-note a{ color: var(--gold); text-decoration: underline; }
/* Desliga hifenização em todo o site (incl. iOS/Safari) */
html, body, p, li, h1, h2, h3, h4, h5, h6, .copy, .copy p{
  -webkit-hyphens: none !important;
  hyphens: none !important;
  word-break: normal;
  overflow-wrap: anywhere; /* evita estouro de layout sem inserir hífen */
}

/* ==== Hambúrguer flutuante (sem barra) ==== */
.nav-fab{
  position: fixed; top: 18px; right: 18px; z-index: 70;
  appearance: none; border: 0; background: rgba(0,0,0,.48);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  width: 44px; height: 44px; border-radius: 12px; cursor: pointer;
  display: grid; place-items: center; color: #fff;
  box-shadow: 0 6px 24px rgba(0,0,0,.18), inset 0 0 0 1px rgba(255,255,255,.08);
}
.nav-fab:hover{ background: rgba(0,0,0,.58); }
.nav-fab:focus-visible{ outline: 2px solid var(--gold, #c6a75c); outline-offset: 4px; }

/* Ícone (3 tracinhos) */
.nav-toggle-box{
  width: 22px; height: 2px; background: currentColor; display:block; position:relative;
  transition: background .2s ease;
}
.nav-toggle-box::before, .nav-toggle-box::after{
  content:""; position:absolute; left:0; width:22px; height:2px; background: currentColor;
  transition: transform .2s ease, top .2s ease, opacity .2s ease;
}
.nav-toggle-box::before{ top:-7px; }
.nav-toggle-box::after{ top:7px; }
.nav-toggle[aria-expanded="true"] .nav-toggle-box{ background: transparent; }
.nav-toggle[aria-expanded="true"] .nav-toggle-box::before{ top:0; transform: rotate(45deg); }
.nav-toggle[aria-expanded="true"] .nav-toggle-box::after{ top:0; transform: rotate(-45deg); }

/* Gaveta do menu (lado direito) */
.nav-drawer{
  position: fixed; inset: 0 0 0 auto; width: min(86vw, 420px); z-index: 69;
  background: #0e0e0e; color:#fff;
  border-left: 1px solid rgba(255,255,255,.08);
  transform: translateX(100%); transition: transform .25s ease;
  box-shadow: -32px 0 64px rgba(0,0,0,.35);
  padding: 20px 18px 24px;
}
.nav-drawer.open{ transform: translateX(0); }

.menu-root{ list-style:none; margin:10px 0 0; padding:0; display:flex; flex-direction:column; gap:10px; }
.menu-root > li > a{ display:block; padding:12px 8px; border-radius:12px; text-decoration:none; color:inherit; opacity:.95; }
.menu-root > li > a:hover{ background: rgba(255,255,255,.06); }

/* Grupo "Tours" dentro de um <li> */
.menu-group{ background: rgba(255,255,255,.03); border: 1px solid rgba(255,255,255,.08); border-radius:14px; padding:10px 10px 8px; }
.menu-group-label{ display:block; font-weight:600; letter-spacing:.2px; padding:6px 4px 2px; opacity:.9; }
.menu-sub{ list-style:none; margin:4px 0 0; padding:0; display:flex; flex-direction:column; }
.menu-sub a{ display:block; padding:10px 8px; border-radius:10px; text-decoration:none; color:inherit; opacity:.95; }
.menu-sub a:hover{ background: rgba(255,255,255,.06); }

/* Botão primário dentro do menu */
.nav-drawer .btn{
  display:block; text-align:center; margin-top:8px; padding:12px 10px; border-radius:999px;
  background: var(--gold, #c6a75c); color:#111; font-weight:600; text-decoration:none;
}

/* Garantia: se houver estilos antigos de header/topbar, neutralizar */
.site-header, .topbar, .nav-wrap, .nav-desktop{ display:none !important; }

/* ====== Language Switch (PT/EN) ====== */
.lang-switch{
  position: fixed; top: 18px; right: 72px; z-index: 71; /* à esquerda do hambúrguer */
  display: flex; gap: 8px;
}
.lang-switch .lang{
  display: inline-flex; align-items: center; gap: 6px;
  padding: 8px 10px; border-radius: 10px; text-decoration: none;
  background: rgba(0,0,0,.48);
  color: #fff; font-weight: 600; font-size: .9rem; letter-spacing:.2px;
  backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
  box-shadow: 0 4px 14px rgba(0,0,0,.18), inset 0 0 0 1px rgba(255,255,255,.08);
  opacity: .9; transition: opacity .15s ease, background .15s ease;
}
.lang-switch .lang:hover{ opacity: 1; background: rgba(0,0,0,.58); }
.lang-switch .lang span{ opacity: .9; }
.lang-switch .lang.is-active{
  outline: 2px solid var(--gold, #c6a75c); outline-offset: 2px;
}

/* Responsivo: se o espaço for apertado, esconde o texto e mantém só a bandeira */
@media (max-width: 420px){
  .lang-switch .lang span{ display:none; }
  .lang-switch{ right: 68px; }
}
