.font-200 { font-weight: 200; }
.font-300 { font-weight: 300; }
.font-400 { font-weight: 400; }
.font-600 { font-weight: 600; }
.font-700 { font-weight: 700; }
.font-800 { font-weight: 800; }
.font-900 { font-weight: 900; }
.center { text-align:  center; }
.block { display: block; }

.poppins { font-family: 'Poppins', sans-serif !important; }

.bg-columns { background: #e1e1e1; }
.border-columns { border: 1px solid red;}

.mg-0 {margin:0 !important;}
.mg-5 {margin: 0.313em !important;}
.mg-10{margin:0.625em !important;}
.mg-20{margin:1.250em !important;}
.mg-30{margin:1.875em !important;}
.mg-top-5{margin-top:0.313em !important;}
.mg-top-7{margin-top:0.438em !important;}
.mg-top-10{margin-top:0.625em !important;}
.mg-top-12 {margin-top: 0.750em !important;}
.mg-top-15 {margin-top: 0.938em !important;}
.mg-top-20{margin-top:1.250em !important;}
.mg-top-30{margin-top:1.875em !important;}
.mg-top-40{margin-top:2.500em !important;}
.mg-top-50{margin-top:3.125em !important;}
.mg-top-60 {margin-top: 3.750em !important;}
.mg-top-70 {margin-top: 4.375em !important;}
.mg-top-80 {margin-top: 5.000em !important;}
.mg-top-100 {margin-top: 6.250em !important;}
.mg-top-170 {margin-top: 10.625em !important;}
.mg-bottom-5{margin-bottom:0.313em !important;}
.mg-bottom-10{margin-bottom:0.625em !important;}
.mg-bottom-15{margin-bottom:0.938em !important;}
.mg-bottom-20{margin-bottom:1.250em !important;}
.mg-bottom-30{margin-bottom:1.875em !important;}
.mg-bottom-40{margin-bottom:2.500em !important;}
.mg-bottom-50{margin-bottom:3.125em !important;}
.mg-bottom-60{margin-bottom:3.750em !important;}
.mg-bottom-100{margin-bottom:6.250em !important;}
.mg-left-5 {margin-left: 0.313em !important;}
.mg-left-10{margin-left:0.625em !important;}
.mg-left-15{margin-left:0.938em !important;}
.mg-left-20{margin-left:1.250em !important;}
.mg-left-30{margin-left:1.875em !important;}
.mg-left-40{margin-left:2.500em !important;}
.mg-left-50{margin-left:3.125em !important;}
.mg-right-5 {margin: 0.313em !important;}
.mg-right-10{margin-right:0.625em !important;}
.mg-right-15{margin-right:0.938em !important;}
.mg-right-20{margin-right:1.250em !important;}
.mg-right-30{margin-right:1.875em !important;}

.pd-0 {padding:0 !important;}
.pd-5 {padding:0.313em !important;}
.pd-10{padding:0.625em !important;}
.pd-15 { padding: 0.938em; }
.pd-20{padding:1.250em !important;}
.pd-30{padding:1.875em !important;}
.pd-40{padding:2.813em !important;}
.pd-80{padding:5.000em !important;}
.pd-top-5{padding-top:0.313em !important;}
.pd-top-10{padding-top:0.625em !important;}
.pd-top-20{padding-top:1.250em !important;}
.pd-top-30{padding-top:1.875em !important;}
.pd-top-40 {padding-top: 2.813em !important;}
.pd-top-60{padding-top:3.750em !important;}
.pd-top-80{padding-top:5.000em !important;}
.pd-bottom-5{padding-bottom: 0.313em !important;}
.pd-bottom-10{padding-bottom:0.313em !important;}
.pd-bottom-10{padding-bottom:0.625em !important;}
.pd-bottom-20{padding-bottom:1.250em !important;}
.pd-bottom-30{padding-bottom:1.875em !important;}
.pd-bottom-40 {padding-bottom: 2.500em !important;}
.pd-bottom-60 {padding-bottom: 3.750em !important;}
.pd-bottom-80 {padding-bottom: 5.000em !important;}
.pd-left-5{padding-left:0.313em !important;}
.pd-left-10{padding-left:0.625em !important;}
.pd-left-15{padding-left:0.938em !important;}
.pd-left-20{padding-left:1.250em !important;}
.pd-left-30{padding-left:1.875em !important;}
.pd-left-80{padding-left:5.000em !important;}
.pd-right-5{padding-right:0.313em !important;}
.pd-right-10{padding-right:0.625em !important;}
.pd-right-15{padding-left:0.938em !important;}
.pd-right-20{padding-right:1.250em !important;}
.pd-right-30{padding-right:1.875em !important;}
.pd-right-40{padding-right:3.750em !important;}

.texto-8 {font-size: 0.5em !important;}
.texto-10 {font-size: 0.625em !important;}
.texto-11 { font-size: 0.688em !important;}
.texto-12 {font-size: 0.750em !important;}
.texto-13 {font-size: 0.813em !important;}
.texto-14 {font-size: 0.875em !important;}
.texto-16 {font-size: 1em !important;}
.texto-18 {font-size: 1.125em !important;}
.texto-20 {font-size: 1.250em !important;}
.texto-22 {font-size: 1.375em !important;}
.texto-24 {font-size: 1.500em !important;}
.texto-26 {font-size: 1.625em !important;}
.texto-28 {font-size: 1.750em !important;}
.texto-30 {font-size: 1.875em !important;}
.texto-32 {font-size: 2.000em !important;}
.texto-34 {font-size: 2.125em !important;}
.texto-36 {font-size: 2.250em !important;}
.texto-40 {font-size: 2.500em !important;}
.texto-42 {font-size: 2.625em !important;}
.texto-44 {font-size: 2.75em !important;}
.texto-48 {font-size: 3.000em !important;}
.texto-50 {font-size: 3.125em !important;}
.texto-52 {font-size: 3.250em !important;}
.texto-56 {font-size: 3.500em !important;}
.texto-60 {font-size: 3.750em !important;}
.texto-70 {font-size: 4.375em !important;}
.texto-72 {font-size: 4.5em !important;}
.texto-80 {font-size: 5.000em !important;}
.texto-100 {font-size: 6.250em !important;}
.texto-170 {font-size: 10.625em !important;}
.texto-200 {font-size: 12.500em !important;}

.texto { color: #000000 !important;}
.texto-branco { color: #fff !important; }
.texto-rosa { color: #fc008b; }
.texto-cinza { color: #9C9D9E; }
.texto-azul { color: #7CD4FD; }
.texto-verde { color: #007e0c; }
.texto-verde-2 { color: #69c200; }


.embed-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; height: auto; } 
.embed-container iframe, .embed-container object, .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.wzap-flutuante { position: fixed; right: 30px; bottom: 20px; z-index: 2000; width: 60px; height: 60px; }

.bg-preto { background: #000000 !important; }
.bg-branco { background: #ffffff !important; }
.bg-amarelo { background: #FAC515; }
.bg-cinza { background: #efefef !important; }
.bg-cinza-footer { background: #252b37; }

.content-100 { display: block; width: 100%; }
.fundo-menu { background: rgba(0, 0, 0, 0.4); }

.bg-realidade { background: url("../img/bg-realidade.jpg") no-repeat center top; height: 753px; }
.bg-recomendado { background: url("../img/bg-recomendado.png") no-repeat center bottom #EFEFEF; }
.bg-localizacao { background: url("../img/bg-localizacao.jpg") no-repeat center top; }
.bg-nosso-espaco { background: url("../img/bg-nosso-espaco.jpg") no-repeat center top #000; height: 949px; }
.bg-avaliacoes { background: url("../img/bg-avaliacoes.jpg") no-repeat center top; }
.bg-planos { background: url("../img/bg-planos.jpg") no-repeat center bottom; height: 780px; }


a.footer { color: #ffffff; }
a.footer:hover { color: #ffffff; text-decoration: underline; }
.bg-form { background: #fff !important; color: #000 !important; -webkit-border-radius: 5px !important; -moz-border-radius: 5px !important; border-radius: 5px !important; }


.box-radius-realidade { -webkit-border-radius: 15px; -moz-border-radius: 15px; border-radius: 15px; }


@media only screen and (max-width: 40.0625em) {

   .bg-planos { background: url("../img/bg-planos-mobile.jpg") no-repeat center bottom; height: 1327px; }
   .bg-avaliacoes { background: url("../img/bg-avaliacoes-mobile.jpg") no-repeat center top; }	  
   .bg-nosso-espaco { background: url("../img/bg-nosso-espaco-mobile.jpg") no-repeat center bottom #000;  }
   .bg-realidade { background: url("../img/bg-realidade-mobile.jpg") no-repeat center top; height: 694px; }
}


iframe.localizacao { width: 100%; height: 300px; border: 0; border-radius: 14px; }

.video-container {
  position: relative;
  padding-bottom: 177%; /* proporção vertical estilo Shorts */
  height: 0;
  overflow: hidden;
  border-radius: 10px;
}

.video-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}


/* Mantém o vídeo em formato vertical (Shorts) */
.short-video-container {
  position: relative;
  padding-bottom: 177%; /* Aproximadamente 9:16, vertical */
  height: 0;
  overflow: hidden;
  border-radius: 10px;
}

.short-video-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media (max-width: 768px) {
  .short-video-container iframe {
    pointer-events: none;
  }

  /* Quando marcar como ativo, esse slide passa a aceitar toque no vídeo */
  .short-video-container.ativo iframe {
    pointer-events: auto;
  }
}


/* GALERIA DE FOTOS */
.gallery{ display:grid; grid-template-columns: 1fr 150px; gap:20px; max-width:1100px; margin:auto; height:70vh; align-items:stretch; }

/* ============================================================
   ÁREA PRINCIPAL
============================================================ */
.hero{ position:relative; border-radius:14px; overflow:hidden; }
.hero img{ width:100%; height:100%; object-fit:cover; display:block; transition:opacity .25s ease; }
.caption{ position:absolute; bottom:0; left:0; right:0; background:rgba(0,0,0,.55); padding:15px; font-size:14px; color: white; }

/* SETAS DESKTOP */
.nav-btn{ position:absolute; top:50%; transform:translateY(-50%); background:rgba(0,0,0,.45); border:none; padding:14px 16px; cursor:pointer; color:white; font-size:26px; border-radius:50%;  ackdrop-filter:blur(4px); transition:background .2s ease; z-index:20; }
.nav-btn:hover{ background:rgba(255,255,255,.25); }
#prevBtn{ left:10px; }
#nextBtn{ right:10px; }

/* ============================================================
   THUMBNAILS
============================================================ */
.thumbs{ background:#181818; border-radius:14px; padding:8px; height:100%; overflow-y:auto; overflow-x:hidden; scrollbar-width: thin; scrollbar-color: #333 #181818; }
.thumbs::-webkit-scrollbar{ width: 8px; }
.thumbs::-webkit-scrollbar-track{ background: transparent; }
.thumbs::-webkit-scrollbar-thumb{ background: #333; border-radius: 999px; border: 2px solid #181818; }
.thumbs::-webkit-scrollbar-thumb:hover{ background: #444; }

/* Tamanho fixo das thumbs */
.thumb{ display:block; cursor:pointer; border-radius:10px; overflow:hidden; border:2px solid transparent; margin-bottom:8px; transition:border-color .2s ease, transform .15s ease; }
.thumb img{ width:100%; height:80px; object-fit:cover; }
.thumb.active{ border-color:#22d48c; transform:translateY(-1px); }

/* ============================================================
VERSÃO MOBILE
============================================================ */
@media(max-width:800px){
  .gallery{ grid-template-columns:1fr; height:auto; }
  .thumbs{ height:auto; white-space:nowrap; overflow-x:auto; overflow-y:hidden; padding-bottom:8px; }
  .thumb{ display:inline-block; width:140px; margin-right:10px; margin-bottom:0; }
  .thumb img{ height:100px; }
  /* remover setas no mobile */
  .nav-btn{ display:none; }
}




/* BOTOES PLANOS */

:root{ --bg-card: #ffffff; --bg-card-bottom: #f1f1f3; --text-main: #111111; --text-sub: #6c6c76; --accent: #b100ff; --cta-bg: #000000; }
  
/* Wrapper fixo (sem responsivo neste momento) */
.plans-wrapper{ display:flex; gap:24px; }

/* Card base */
.plan-card{ position:relative; width:100%; background:var(--bg-card); border-radius:24px; overflow:hidden; text-align:center; }
.plan-card__header{ padding:24px 20px 18px; }
.plan-card__title{ font-size:22px; font-weight:700; margin:0 0 6px; color:var(--text-main); }
.plan-card__subtitle{ font-size:16px; font-weight:600; margin:0; color:var(--accent); }
.plan-card__bottom{ padding:18px 20px 22px; background:var(--bg-card-bottom); }
.plan-card__lessons{ margin:0 0 14px; font-size:15px; color:var(--text-sub); }
.plan-card__cta{ display:inline-block; padding:10px 20px; border-radius:999px; background:var(--cta-bg); color:#ffffff; font-size:14px; font-weight:600; text-decoration:none; }
.plan-card__cta:hover{ filter:brightness(1.1); }

/* Card destacado */
.plan-card--featured .plan-card__subtitle{ color:var(--accent); }

/* Selo */
.plan-card__badge{ position:absolute; top: 0px; left:-10px; background:var(--accent); color:#ffffff; padding:4px 15px 4px 30px; border-radius:999px; font-size:12px; font-weight:600; }