@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;600;700;800;900&display=swap');

/* ======================= FONTS ======================= */
.dotgothic16-regular { 
  font-family: "DotGothic16", sans-serif; 
  font-weight: 400; 
  font-style: normal; 
}

.poppins-thin{font-family:"Poppins",sans-serif;font-weight:100;font-style:normal}
.poppins-extralight{font-weight:200;font-style:normal;font-family:"Poppins",sans-serif}
.poppins-light{font-weight:300;font-style:normal;font-family:"Poppins",sans-serif}
.poppins-regular{font-weight:400;font-style:normal;font-family:"Poppins",sans-serif}
.poppins-medium{font-weight:500;font-style:normal;font-family:"Poppins",sans-serif}
.poppins-semibold{font-weight:600;font-style:normal;font-family:"Poppins",sans-serif}
.poppins-bold{font-weight:700;font-style:normal;font-family:"Poppins",sans-serif}
.poppins-extrabold{font-weight:800;font-style:normal;font-family:"Poppins",sans-serif}
.poppins-black{font-weight:900;font-style:normal;font-family:"Poppins",sans-serif}
.poppins-thin-italic{font-weight:100;font-style:italic;font-family:"Poppins",sans-serif}
.poppins-extralight-italic{font-weight:200;font-style:italic;font-family:"Poppins",sans-serif}
.poppins-light-italic{font-weight:300;font-style:italic;font-family:"Poppins",sans-serif}
.poppins-regular-italic{font-weight:400;font-style:italic;font-family:"Poppins",sans-serif}
.poppins-medium-italic{font-weight:500;font-style:italic;font-family:"Poppins",sans-serif}
.poppins-semibold-italic{font-weight:600;font-style:italic;font-family:"Poppins",sans-serif}
.poppins-bold-italic{font-weight:700;font-style:italic;font-family:"Poppins",sans-serif}
.poppins-extrabold-italic{font-weight:800;font-style:italic;font-family:"Poppins",sans-serif}
.poppins-black-italic{font-weight:900;font-style:italic;font-family:"Poppins",sans-serif}

/* ======================= MAIN ======================= */
body{
  background-color:#000;
  font-family:"Poppins",sans-serif;
}

a{transition:.3s all ease}
a, a:hover{text-decoration:none!important}

/* ======================= HERO (vídeo) ======================= */
#martins_hero{position:relative;height:100vh;overflow:hidden}
#martins_hero video{
  position:absolute;
  top:50%;
  left:50%;
  min-width:100%;
  min-height:100%;
  width:auto;height:auto;
  transform:translate(-50%,-50%);
  object-fit: cover;
  background: #000; /* opcional, evita espaços vazios */
  z-index:0;
}
@media (max-width: 991px){
  #martins_hero video {
    object-fit: cover !important;
    width: 100% !important;
    height: auto !important;
    min-width: 0 !important;
    min-height:100%;
    top: 0 !important;
    left: 0 !important;
    transform: none !important;
    background: #000; /* evita áreas vazias em volta */
  }
}

/* Desativa o escurecimento base para o efeito de recorte funcionar */
#martins_hero .overlay{
  position:absolute;
  inset:0;
  background: rgba(50,50,50,0.15) !important;
  z-index:1;
}

/* Texto padrão sobre o vídeo */
#martins_hero .content{
  position:relative;z-index:2;display:flex;flex-direction:column;
  justify-content:center;align-items:center;height:100%;
  color:#fff;text-align:center;font-family:'Poppins',sans-serif;
}

/* ---------- HERO: Video Inside Text ---------- */
#martins_hero .cutout{
  position:absolute;inset:0;
  z-index:2;
  display:grid;
  place-items:center;
  pointer-events:none;
  mix-blend-mode: screen;
}
#martins_hero .cutout svg{width:100%;height:100%}
#martins_hero .mask-text{
  font-family:'Poppins',sans-serif;font-weight:900;letter-spacing:.06em;text-transform:uppercase;
}
#martins_hero .mask-text.line1{font-size:30px}
#martins_hero .mask-text.line2{font-size:30px}
@media (min-width:576px){
  #martins_hero .mask-text.line1{font-size:36px}
  #martins_hero .mask-text.line2{font-size:36px}
}
@media (min-width:768px){
  #martins_hero .mask-text.line1{font-size:42px}
  #martins_hero .mask-text.line2{font-size:42px}
}
@media (min-width:992px){
  #martins_hero .mask-text.line1{font-size:48px}
  #martins_hero .mask-text.line2{font-size:48px}
}
@media (min-width:1200px){
  #martins_hero .mask-text.line1{font-size:54px}
  #martins_hero .mask-text.line2{font-size:54px}
}

/* ======================= SESSÕES ======================= */
#martins_content{min-height:100vh;background-color:#FCBD27;color:#000}
#martins_network{min-height:100vh;background-color:#FFF;color:#000}

/* Conteúdo rico */
.rich-content img{max-width:100%;height:auto;border-radius:8px}
.rich-content iframe{max-width:100%}
.rich-content p,.rich-content li{color:#000;line-height:1.7}
.rich-content h1,.rich-content h2,.rich-content h3,
.rich-content h4,.rich-content h5,.rich-content h6{color:#000;margin-top:1rem;margin-bottom:.5rem}

/* Molduras de mídia */
.media-frame{position:relative}
.media-frame img,.media-frame video{display:block;width:100%;height:auto;border-radius:12px}

/* Timeline */
.timeline .timeline-item + .timeline-item{margin-top:2rem}
@media (min-width:992px){
  .timeline .timeline-item:nth-child(even) .order-lg-1{order:0!important}
}

/* Propostas (cards) - COM ANIMAÇÃO HOVER */
.proposal-card{
  background:#0e0e0e;
  color:#fff;
  border-radius:14px;
  transition: all 0.3s ease;
  transform: translateY(0);
}

.proposal-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 15px 35px rgba(0,0,0,0.3);
}

.proposal-card .card-body i{
  color:#fff;
  transition: transform 0.3s ease;
}

.proposal-card:hover .card-body i {
  transform: scale(1.2);
}

.left {
	text-align: left;
}

/* ======================= FOOTER ======================= */
.content{height:70vh}
.footer-16371{
  background-color:#000;padding:2rem 0;margin-bottom:100px;font-family:"Poppins",sans-serif;
}
.footer-16371 .footer-site-logo{text-align:center;font-size:2rem;font-weight:900}
.footer-16371 .footer-site-logo a{color:#FFF}
.footer-16371 .nav-links{padding:0;margin:0}
.footer-16371 .nav-links li{display:inline-block}
.footer-16371 .nav-links li a{padding:10px;color:#FFF}
.footer-16371 .nav-links li a:hover{color:#FFF}
.footer-16371 .social h3{font-weight:bold;font-size:18px;color:#FFF}
.footer-16371 .social ul li{display:inline-block}
.footer-16371 .social ul li a{display:inline-block;padding:10px}
.footer-16371 .social ul li.in a,
.footer-16371 .social ul li.tw a,
.footer-16371 .social ul li.fb a,
.footer-16371 .social ul li.dr a,
.footer-16371 .social ul li.pin a{color:#FFF}
.footer-16371 .copyright{color:#FFF}

/* ======================= NAVBAR ======================= */
.martins-navbar{
  background-color:#FCBD27;margin:10px;border-radius:8px;
  box-shadow:0 8px 24px rgba(0,0,0,.18);transition:box-shadow .2s ease, transform .2s ease;
}
.martins-navbar:hover{
  box-shadow:0 10px 28px rgba(0,0,0,.22);
}
.martins-navbar .navbar-brand{font-weight:800}
.martins-navbar .nav-link{color:#0a0702!important;font-weight:600}
.martins-navbar .nav-link:hover,.martins-navbar .nav-link:focus{opacity:.85}
.martins-social .martins-social-btn{border-color:rgba(10,7,2,.25);background:rgba(255,255,255,.6);color:#0a0702}
.martins-social .martins-social-btn:hover{background:#fff}
@media (max-width:991.98px){
  .martins-navbar{border-radius:8px}
  .martins-social{margin-top:.5rem;flex-wrap:wrap}
}

.overlay2 {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
  background: radial-gradient(circle at center, #00000029 0%, #000000f2 100%);
  mix-blend-mode: multiply;
}

.overlay2 h1 {
  font-family: 'Poppins',sans-serif;
  font-weight: 900;
  font-size: 18vw;
  line-height: 0.9em;
  text-transform: uppercase;
  text-align: center;
  color: white;
  mix-blend-mode: screen;
}

/* ============================================================= */
/* ===== Scroll seccionado global (todas as seções + footer) ==== */
/* ============================================================= */
html, body{
  height: 100%;
  overflow-y: auto;
  scroll-snap-type: y mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
}

/* Cada seção ocupa 100vh e se encaixa no scroll */
#martins_hero,
#martins_content > section,
#martins_network > section,
footer.footer-16371{
  height: 100vh;
  min-height: 100vh;
  scroll-snap-align: start;
  scroll-snap-stop: always;
}

/* Respiração para a navbar fixa inferior em telas menores */
@media (max-width: 991.98px){
  #martins_content > section,
  #martins_network > section,
  footer.footer-16371{
    padding-bottom: 84px;
  }
}

/* Desativa snaps internos antigos */
#martins_content{
  height: auto !important;
  overflow: visible !important;
  scroll-snap-type: none !important;
}

/* Garante que nada empurre o snap */
body{ margin: 0; }

/* ============================================================= */
/* ===== Seção 'Sobre' — imagem à esquerda, caixa à direita ===== */
/* ============================================================= */
#sobre{
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;      /* conteúdo à direita */
  background: #fff;
  overflow: hidden;
  color: #000;
}

/* Fundo ocupa metade esquerda */
#sobre::before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
  height: 100%;
  background: url('../imagens/sgtmartins.png') left bottom / contain no-repeat;
  z-index: 0;
}

#propostas {
  background-color: #FCBD27;
  background-image: url('../imagens/pintas.png');
  background-repeat: repeat;
  background-size: 100rem;
}

.logo {
	width: 40px;
}

.icon-tiktok::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'%3E%3Cpath d='M19.589 6.686a4.793 4.793 0 0 1-3.77-4.245V2h-3.445v13.672a2.896 2.896 0 0 1-5.201 1.743l-.002-.001.002.001a2.895 2.895 0 0 1 3.183-4.51v-3.5a6.329 6.329 0 0 0-5.394 10.692 6.33 6.33 0 0 0 10.857-4.424V8.687a8.182 8.182 0 0 0 4.773 1.526V6.79a4.831 4.831 0 0 1-1.003-.104z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.icon-kwai::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 48 48' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' d='m20.85 42.5h13.48c2.977 0 5.391-2.414 5.391-5.391v-7.764c0-2.977-2.414-5.391-5.391-5.391H20.85c-2.977 0-5.391 2.414-5.391 5.391v7.764c0 2.977 2.414 5.391 5.391 5.391Z'/%3E%3Ccircle stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' cx='18.328' cy='13.261' r='7.761'/%3E%3Ccircle stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' cx='32.904' cy='14.206' r='6.815'/%3E%3Cpath stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' d='m15.459 30.594-4.482-2.588c-1.198-.692-2.696.173-2.696 1.556v7.353c0 1.383 1.498 2.248 2.696 1.556l4.482-2.588'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.card-trajetoria {
	padding: 0.6rem;
}

#formacao .card {
  transition: all 0.3s ease;
  border: 1px solid rgba(0,0,0,0.05) !important;
}

#formacao .card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 20px rgba(0,0,0) !important;
}

#formacao {
	background: #000;
	background-image: url('../imagens/pintas-brancas.png');
	background-repeat: repeat;
	background-size: 100rem;
}

.text-yellow {
	color: #fcbd27 !important;
}

.bg-yellow {
	background: #fcbd27 !important;
	color: #333;
}

.social-icons {
	display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 30px;
}

.social-icon {
	width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    color: #000;
    text-decoration: none;
	transition: all 0.3s ease;
    transform: translateY(0);
}

.ctwo {
	margin-top: 3rem;
}

.logo-missao {
	width: 100px;
    min-width: 100px;
}

/* Caixa branca do texto (lado direito) */
#sobre .rich-content{
  position: relative;
  z-index: 1;
  background: rgba(255,255,255,0.97);
  border-radius: 5px;
  padding: 2rem 2.5rem;
  box-shadow: 0 8px 24px rgba(0,0,0,0.12);
  max-width: 540px;
  margin-right: 5vw;
  transition: all 0.3s ease;
}

#sobre .rich-content:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 30px rgba(0,0,0,0.18);
}

/* Responsivo — em mobile, imagem em cima e texto embaixo */
@media (max-width: 991.98px){
  #sobre{
    flex-direction: column;
    justify-content: flex-end;
    align-items: stretch;
  }

  #sobre::before{
    width: 100%;
    height: 50%;
    top: 0;
    left: 0;
  }

  #sobre .rich-content{
    border-radius: 5px 5px 0 0;
    padding: 1.5rem;
    max-width: 100%;
    margin-right: 0;
  }
}

/* ===== Fix #sobre: remover imagem duplicada e jogar a caixa para a direita ===== */

/* some a coluna da imagem original */
#sobre .media-frame,
#sobre .row > .col-lg-6:last-child{
  display: none !important;
}

/* faz a primeira coluna ocupar 100% para podermos posicionar a caixa livremente */
#sobre .row > .col-lg-6:first-child{
  flex: 0 0 100% !important;
  max-width: 100% !important;
}

/* empurra a caixa branca para a direita */
#sobre .rich-content{
  margin-left: auto;       /* gruda à direita */
  margin-right: 5vw;       /* respiro da borda direita */
}

/* mobile: centraliza a caixa e remove o respiro lateral */
@media (max-width: 991.98px){
  #sobre .rich-content{
    margin-right: 0;
    margin-left: 0;
  }
}

/* ============================================================
   MOBILE: seções longas com scroll próprio (antes de trocar seção)
   ============================================================ */
@media (max-width: 991.98px){
  /* A seção inteira rola por dentro, sem encadear para o body */
  #propostas,
  #trajetoria,
  #formacao{
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-y: contain;   /* evita "empurrar" o snap do body */
    padding-bottom: 84px;             /* respiro por causa da navbar fixa */
  }
}

/* ============================================================
   MOBILE: caixas de texto com scroll interno quando necessário
   (não interfere no desktop)
   ============================================================ */
@media (max-width: 991.98px){
  /* Cards dos Pilares/Propostas */
  #propostas .proposal-card .card-body{
    max-height: min(56vh, 460px);
    //overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;     /* não encadeia para a seção */
  }

  /* Blocos de texto da linha do tempo (Trajetória) */
  #trajetoria .card .card-body{
    max-height: min(56vh, 460px);
    //overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
  }
  
  #formacao .card .card-body{
    max-height: min(56vh, 460px);
    //overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
  }
}

/* Opcional: quando um card está com scroll interno, indique isso visualmente */
@media (max-width: 991.98px){
  #propostas .proposal-card .card-body,
  #trajetoria .card .card-body,
  #formacao .card .card-body{
    scrollbar-width: thin;
  }
  #propostas .proposal-card .card-body::-webkit-scrollbar,
  #trajetoria .card .card-body::-webkit-scrollbar,
  #formacao .card .card-body::-webkit-scrollbar{
    width: 6px;
  }
  #propostas .proposal-card .card-body::-webkit-scrollbar-thumb,
  #trajetoria .card .card-body::-webkit-scrollbar-thumb,
  #formacao .card .card-body::-webkit-scrollbar-thumb{
    background: rgba(0,0,0,.25);
    border-radius: 99px;
  }
}

/* --- MOBILE: permite sair da seção ao atingir topo/fundo --- */
@media (max-width: 991.98px){
  /* liberar encadeamento de scroll para o body */
  #propostas,
  #trajetoria,
  #formacao{
    overscroll-behavior-y: auto !important; /* antes estava contain */
  }

  /* manter o scroll contido APENAS dentro das caixas longas,
     pra não "puxar" a página enquanto o dedo está nelas */
  #propostas .proposal-card .card-body,
  #trajetoria .card .card-body,
  #formacao .card .card-body{
    overscroll-behavior: contain !important; /* continua contido só no card */
  }
}

/* ===== Timeline vertical Bootstrap (sem imagens) ===== */
#trajetoria .bt-timeline{
  padding-left: 2.25rem;            /* espaço para a coluna de ícones */
}

#trajetoria .bt-timeline::before{
  content: "";
  position: absolute;
  left: 1.13rem;                     /* centraliza com o ícone */
  top: 0;
  bottom: 0;
  width: 2px;
  background: #fcbd27;              /* linha vertical */
}

#trajetoria .bt-tl-item{
  position: relative;
  margin-bottom: 0.7rem;
  transition: all 0.3s ease;
}

#trajetoria .bt-tl-icon{
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  background: #0a0a0a;              /* círculo escuro combina com a paleta */
  color: #fff;
  display: grid;
  place-items: center;
  border: 2px solid #FCBD27;        /* acento amarelo do site */
  position: relative;
  margin-left: -2.25rem;            /* alinha sobre a linha vertical */
  z-index: 1;
  box-shadow: 0 2px 10px rgba(0,0,0,.15);
  transition: all 0.3s ease;
}

#trajetoria .bt-tl-item:hover .bt-tl-icon {
  transform: scale(1.1);
  background: #FCBD27;
  color: #000;
}

#trajetoria .bt-tl-icon i{
  font-size: 1.1rem;
  line-height: 1;
}

/* Card neutro para ler bem no fundo branco do #martins_network */
#trajetoria .card{
  background: #fff;
  transition: all 0.3s ease;
}

#trajetoria .card:hover {
  box-shadow: 0 8px 25px rgba(0,0,0,0.15);
  transform: translateY(-3px);
}

/* Mobile: já temos overflow próprio para #trajetoria no seu CSS;
   aqui só damos um respiro entre cards se a tela for muito estreita */
@media (max-width: 575.98px){
  #trajetoria .bt-tl-item{
    margin-bottom: 1rem;
  }
}

/* ===== ANIMAÇÕES PARA BOTÕES DE REDES SOCIAIS ===== */
#social .btn {
  transition: all 0.3s ease;
  transform: translateY(0);
}

#social .btn:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 25px rgba(0,0,0,0.2);
  background: #fcbd27;
  border-color: #fcbd27;
}

#social .btn i {
  transition: transform 0.3s ease;
}

#social .btn:hover i {
  transform: scale(1.2);
}

/* ===== FALLBACK PARA VÍDEO ===== */
.video-fallback {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(45deg, #000000 0%, #333333 100%);
  display: none;
  z-index: 0;
}

.no-video .video-fallback {
  display: block;
}

.no-video #martins_hero .overlay2 {
  background: rgba(0,0,0,0.7);
}

/* ================= DESKTOP ================= */
@media (min-width: 992px){
  /* Slim: botão flutuante no canto */
  .martins-navbar{
    position: fixed !important;
    bottom: 24px !important;
    right: 24px !important;
    left: auto !important; top: auto !important;
    background-color: #FCBD27;
    border-radius: 12px;
    box-shadow: 0 6px 24px rgba(0,0,0,.25);
    z-index: 1040;
    overflow: hidden;
    width: auto; min-width: 200px; height: 56px;
    transition: all .25s ease-in-out;
  }
  .martins-navbar .container-fluid{
    flex-wrap: nowrap; align-items: center; justify-content: space-between;
    padding: 0 .75rem;
  }
  .martins-navbar .navbar-brand{ display:flex; align-items:center; gap:.5rem; margin:0; padding:0; font-weight:800; }
  .martins-navbar .navbar-toggler{ display:inline-flex !important; border:none; background:transparent; padding:0; color:#000; }
  .martins-navbar .navbar-toggler:focus{ box-shadow:none; }
  .martins-navbar .navbar-toggler .navbar-toggler-icon{
    width:24px;height:24px;background-size:100% 100%;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba(0,0,0,0.85)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
  }

  /* Estado inicial: collapse escondido */
  .martins-navbar .navbar-collapse{
    display: none !important;
  }

  /* EXPANDIDO: quando a classe expanded é adicionada ao navbar */
  .martins-navbar.expanded{
    height: auto;
    width: min(90vw, 720px);
    border-radius: 12px;
    right: 24px; 
    bottom: 24px; 
    left: auto;
  }
  
  .martins-navbar.expanded .container-fluid{ 
    flex-wrap: wrap; 
    padding: .75rem 1rem; 
  }
  
  .martins-navbar.expanded .navbar-collapse{
    display: block !important; 
    width: 100%; 
    margin-top: .5rem;
  }
  
  .martins-navbar.expanded .navbar-nav{
    flex-direction: row; 
    flex-wrap: wrap; 
    gap: .75rem;
    justify-content: flex-start;
  }
  
  .martins-navbar.expanded .nav-link{
    color: #000 !important; 
    font-weight: 600; 
    border-radius: 8px; 
    padding: .4rem .6rem;
  }
  
  .martins-navbar.expanded .nav-link:hover{ 
    background: rgba(0,0,0,.1); 
  }
}

/* ================= MOBILE ================= */
@media (max-width: 991.98px){
  /* Barra fixa inferior, com cantos arredondados e respiro à direita/ambos os lados */
  .martins-navbar{
    position: fixed !important;
    bottom: 8px !important;
    left: 8px !important;
    right: 8px !important;           /* cria distância no lado direito */
    width: auto !important;
    border-radius: 12px !important;  /* “arredondadinho” */
    box-shadow: 0 6px 24px rgba(0,0,0,.2);
  }
  /* Mantém o comportamento padrão do collapse no mobile (não mexer) */
  .martins-navbar .navbar-collapse{
    display:block !important;        /* menu aberto como antes */
    max-height:none !important; opacity:1 !important; overflow:visible !important;
  }
  .martins-navbar .navbar-toggler{ display:none !important; } /* ícone não é necessário no mobile fixo */
}

/* ===== MOBILE: menu fechado por padrão + ícone visível ===== */
@media (max-width: 991.98px){
  /* posição e “arredondadinho” com respiro */
  .martins-navbar{
    position: fixed !important;
    bottom: 8px !important;
    left: 8px !important;
    right: 8px !important;
    width: auto !important;
    border-radius: 12px !important;
    box-shadow: 0 6px 24px rgba(0,0,0,.2);
    z-index: 1040;
    padding-bottom: env(safe-area-inset-bottom); /* iOS */
  }
  .martins-navbar .container-fluid{
    padding: .5rem .75rem;
    align-items: center;
  }

  /* MOSTRAR o hambúrguer no mobile */
  .martins-navbar .navbar-toggler{
    display: inline-flex !important;
    border: none;
    background: transparent;
    color: #000;
    padding: 0;
    margin-left: auto;     /* empurra para a direita */
  }
  .martins-navbar .navbar-toggler:focus{ box-shadow: none; }
  .martins-navbar .navbar-toggler .navbar-toggler-icon{
    width: 24px; height: 24px; background-size: 100% 100%;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba(0,0,0,0.85)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
  }

  /* NÃO forçar aberto: fechado por padrão; abre com .show do Bootstrap */
  .martins-navbar .navbar-collapse{
    display: none !important;                 /* default: fechado */
    padding: .5rem .75rem .75rem;
    border-top: 1px solid rgba(0,0,0,.08);
  }
  .martins-navbar .navbar-collapse.show{
    display: block !important;                /* aberto quando .show */
  }

  .martins-navbar .navbar-nav{ gap: .25rem; }
  .martins-navbar .nav-link{
    padding: .5rem .75rem;
    border-radius: 8px;
  }
}