.elementor-25 .elementor-element.elementor-element-f76ec02:not(.elementor-motion-effects-element-type-background), .elementor-25 .elementor-element.elementor-element-f76ec02 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#2962FF;}.elementor-25 .elementor-element.elementor-element-f76ec02 > .elementor-container{max-width:1600px;}.elementor-25 .elementor-element.elementor-element-f76ec02 .elementor-column-gap-custom .elementor-column > .elementor-element-populated{padding:96px;}.elementor-25 .elementor-element.elementor-element-f76ec02{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-25 .elementor-element.elementor-element-f76ec02 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-25 .elementor-element.elementor-element-6f347ad{text-align:center;}.elementor-25 .elementor-element.elementor-element-6f347ad .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:35px;font-weight:600;line-height:40px;-webkit-text-stroke-color:#000;stroke:#000;text-shadow:0px 0px 1px rgba(0,0,0,0.3);color:#D6D6D8;}.elementor-25 .elementor-element.elementor-element-dc4a588{text-align:center;}.elementor-25 .elementor-element.elementor-element-dc4a588 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-weight:600;-webkit-text-stroke-color:#000;stroke:#000;text-shadow:0px 0px 1px rgba(0,0,0,0.3);color:#FFFFFF;}.elementor-25 .elementor-element.elementor-element-7ab0a18{--display:flex;--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-25 .elementor-element.elementor-element-7ab0a18:not(.elementor-motion-effects-element-type-background), .elementor-25 .elementor-element.elementor-element-7ab0a18 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-25 .elementor-element.elementor-element-7ab0a18.e-con{--align-self:center;}.elementor-25 .elementor-element.elementor-element-2371af0.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-25 .elementor-element.elementor-element-2371af0{text-align:center;}.elementor-25 .elementor-element.elementor-element-2371af0 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-weight:600;color:#FFFFFF;}.elementor-25 .elementor-element.elementor-element-44684f9{--display:flex;}.elementor-25 .elementor-element.elementor-element-44684f9:not(.elementor-motion-effects-element-type-background), .elementor-25 .elementor-element.elementor-element-44684f9 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F9FAFB;}.elementor-25 .elementor-element.elementor-element-0882d51{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-25 .elementor-element.elementor-element-bdba6f9{--spacer-size:50px;}.elementor-25 .elementor-element.elementor-element-95ff137{text-align:center;}.elementor-25 .elementor-element.elementor-element-95ff137 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-weight:600;color:#2962FF;}.elementor-25 .elementor-element.elementor-element-9c48ee9.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-25 .elementor-element.elementor-element-29fd771{--spacer-size:50px;}.elementor-25 .elementor-element.elementor-element-68459c4{--display:flex;}.elementor-25 .elementor-element.elementor-element-1fcc5d9{--spacer-size:50px;}.elementor-25 .elementor-element.elementor-element-5426a47 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-weight:600;text-shadow:0px 0px 1px rgba(0,0,0,0.3);color:#FFFFFF;}.elementor-25 .elementor-element.elementor-element-8686ab2{--spacer-size:50px;}.elementor-25 .elementor-element.elementor-element-e3a927f{--display:flex;}.elementor-25 .elementor-element.elementor-element-1b9e7a1{--spacer-size:50px;}.elementor-25 .elementor-element.elementor-element-931c057.elementor-element{--align-self:center;}.elementor-25 .elementor-element.elementor-element-af2302b{--spacer-size:50px;}.elementor-25 .elementor-element.elementor-element-f1e7115{--display:flex;}.elementor-25 .elementor-element.elementor-element-f1e7115:not(.elementor-motion-effects-element-type-background), .elementor-25 .elementor-element.elementor-element-f1e7115 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F9FAFB;}.elementor-25 .elementor-element.elementor-element-1efedea{--spacer-size:50px;}.elementor-25 .elementor-element.elementor-element-73647da{--spacer-size:50px;}.elementor-25 .elementor-element.elementor-element-5bfad6c{--display:flex;}@media(max-width:767px){.elementor-25 .elementor-element.elementor-element-f76ec02 > .elementor-container{max-width:1600px;}.elementor-25 .elementor-element.elementor-element-f76ec02 .elementor-column-gap-custom .elementor-column > .elementor-element-populated{padding:35px;}.elementor-25 .elementor-element.elementor-element-6f347ad{padding:10px 0px 10px 0px;text-align:center;}.elementor-25 .elementor-element.elementor-element-6f347ad .elementor-heading-title{font-size:22px;line-height:1.5em;}.elementor-25 .elementor-element.elementor-element-dc4a588{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-25 .elementor-element.elementor-element-dc4a588 .elementor-heading-title{font-size:18px;line-height:1.5em;}.elementor-25 .elementor-element.elementor-element-7ab0a18{--min-height:700px;--justify-content:center;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-25 .elementor-element.elementor-element-7ab0a18.e-con{--align-self:center;}.elementor-25 .elementor-element.elementor-element-2371af0{margin:025px 025px calc(var(--kit-widget-spacing, 0px) + 025px) 025px;text-align:left;}.elementor-25 .elementor-element.elementor-element-2371af0 .elementor-heading-title{line-height:1.5em;}.elementor-25 .elementor-element.elementor-element-44684f9{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-25 .elementor-element.elementor-element-bdba6f9{--spacer-size:30px;}.elementor-25 .elementor-element.elementor-element-95ff137{padding:0px 0px 0px 0px;text-align:center;}.elementor-25 .elementor-element.elementor-element-9c48ee9{width:var( --container-widget-width, 306px );max-width:306px;--container-widget-width:306px;--container-widget-flex-grow:0;}.elementor-25 .elementor-element.elementor-element-9c48ee9.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-25 .elementor-element.elementor-element-29fd771{--spacer-size:30px;}.elementor-25 .elementor-element.elementor-element-68459c4{--min-height:0px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-25 .elementor-element.elementor-element-1fcc5d9{--spacer-size:30px;}.elementor-25 .elementor-element.elementor-element-5426a47{text-align:left;}.elementor-25 .elementor-element.elementor-element-5426a47 .elementor-heading-title{line-height:1.5em;}.elementor-25 .elementor-element.elementor-element-8686ab2{--spacer-size:30px;}.elementor-25 .elementor-element.elementor-element-1b9e7a1{--spacer-size:25px;}.elementor-25 .elementor-element.elementor-element-af2302b{--spacer-size:25px;}.elementor-25 .elementor-element.elementor-element-1efedea{--spacer-size:20px;}.elementor-25 .elementor-element.elementor-element-73647da{--spacer-size:20px;}}/* Start custom CSS for html, class: .elementor-element-1044ead */.techland {
  color: #FFFFFF;                 /* texto branco */
  font-family: 'Poppins', sans-serif;
  font-size: 30px;                /* tamanho do texto */
  font-weight: 600;               /* pode ajustar para 400/700 */
  text-align: center;          /* centraliza o texto */
  display: block;              /* garante que ocupe a linha inteira */
  width: 100%;  
}

.cursor {
  display: inline-block;
  font-family: 'Poppins', sans-serif;
  font-size: 30px;                /* mesmo tamanho do texto */
  font-weight: 600;
  color: #FFFFFF;                 /* cursor branco */
  animation: blink 1s step-start infinite;
}

@keyframes blink {
  50% { opacity: 0; }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-6f347ad */.career-title {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 28px;
  line-height: 1.3;
  text-align: center;
  color: #E5E7EB; /* escuro para fundo claro */
  margin: 0 auto 24px;
  max-width: 70ch; /* evita ficar muito comprido em telas enormes */
}

/* O span normalmente não quebra */
.break-large {
  display: none;
}

/* Em telas bem largas, força quebra */
@media (min-width: 1200px) {
  .break-large {
    display: block; /* quebra a linha */
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a8fd46c */.lamp-container {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 5px auto;
}

.lamp-balanco {
  width: 150px !important;   /* força o tamanho */
  height: auto !important;   /* mantém a proporção */
  animation: lamp-balanço 5s ease-in-out infinite;
  transform-origin: bottom center; /* gira pela base da mão */
}

@keyframes lamp-balanço {
  0%, 100% {
    transform: rotate(0deg) scale(1);
    filter: brightness(1);
  }
  20% {
    transform: rotate(-3deg) scale(1.02);
    filter: brightness(1.08);
  }
  50% {
    transform: rotate(0deg) scale(1);
    filter: brightness(1);
  }
  80% {
    transform: rotate(3deg) scale(1.02);
    filter: brightness(1.08);
  }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-dc4a588 *//* BASE */
.elementor-25 .elementor-element.elementor-element-dc4a588 .card-flutuante {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  line-height: 1.6;
  font-size: 20px;
  padding: 28px 36px;
  border-radius: 20px;
  max-width: 800px;
  margin: 40px auto;
  text-align: center;
  position: relative;
  transition: transform .28s ease, box-shadow .28s ease, background .28s ease, border-color .28s ease;
}
@media (max-width: 767px){
  .elementor-25 .elementor-element.elementor-element-dc4a588 .card-flutuante{ font-size: 18px; padding: 20px 24px; margin: 28px auto; }
}

/* GLASS */
.elementor-25 .elementor-element.elementor-element-dc4a588 .card-flutuante--GLASS {
  color: #FFFFFF;
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.25);
  backdrop-filter: blur(10px) saturate(140%);
  -webkit-backdrop-filter: blur(10px) saturate(140%);
  box-shadow: 0 12px 34px rgba(0,0,0,0.25);
}
.elementor-25 .elementor-element.elementor-element-dc4a588 .card-flutuante--GLASS::before {
  content:""; position:absolute; inset:0; border-radius: 20px; padding: 1.5px;
  background: linear-gradient(135deg, #7C3AED, #2962FF);
  -webkit-mask: 
    linear-gradient(#000 0 0) content-box, 
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor; mask-composite: exclude;
  pointer-events: none;
}
.elementor-25 .elementor-element.elementor-element-dc4a588 .card-flutuante--GLASS:hover {
  transform: translateY(-6px); 
  box-shadow: 0 18px 40px rgba(0,0,0,0.28);
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-f76ec02 */.elementor-25 .elementor-element.elementor-element-f76ec02 {
  background: linear-gradient(135deg, #2962FF 0%, #7C3AED 100%);
  position: relative;
  min-height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.elementor-25 .elementor-element.elementor-element-f76ec02::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at top right, rgba(255,255,255,0.15), transparent 70%),
              radial-gradient(circle at bottom left, rgba(0,0,0,0.2), transparent 70%);
  mix-blend-mode: overlay;
  opacity: 0.3;
  pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2371af0 *//* ============================
   SEÇÃO DARK — COMUNIDADE TECHLÂNDIA
   BORDA NEUTRA
   ============================ */

/* Seção dark base */
.elementor-25 .elementor-element.elementor-element-2371af0 .tl-section{
  background:#0B1220;
  padding:56px 16px;
  border-radius:20px;
  font-family:'Montserrat',sans-serif;
  color:#E5E7EB;

  /* borda neutra clara */
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,0.10),
    0 10px 30px rgba(0,0,0,0.25);
}

/* Container central */
.elementor-25 .elementor-element.elementor-element-2371af0 .tl-container{
  max-width:1040px;
  margin:0 auto;
  text-align:center;
}

/* Título e subtítulo */
.elementor-25 .elementor-element.elementor-element-2371af0 .tl-heading{
  margin:0 0 10px;
  font-size:32px;
  line-height:1.2;
  font-weight:700;
  color:#FFFFFF;
}
.elementor-25 .elementor-element.elementor-element-2371af0 .tl-sub{
  margin:0 0 24px;
  font-size:18px;
  line-height:1.6;
  color:#CBD5E1;
}

/* Lista de fatos */
.elementor-25 .elementor-element.elementor-element-2371af0 .tl-facts{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  justify-content:center;
  list-style:none;
  margin:0;
  padding:0;
}

/* Badge/card */
.elementor-25 .elementor-element.elementor-element-2371af0 .tl-fact{
  display:flex;
  align-items:center;
  gap:10px;
  padding:14px 18px;
  border-radius:16px;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.10);
  box-shadow:0 6px 18px rgba(0,0,0,0.18);
}

/* KPI */
.elementor-25 .elementor-element.elementor-element-2371af0 .tl-kpi{
  font-weight:700;
  font-size:16px;
  background:linear-gradient(90deg,#2962FF,#7C3AED);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
}

/* KPI versão grátis */
.elementor-25 .elementor-element.elementor-element-2371af0 .tl-kpi.tl-free{
  background:none;
  -webkit-text-fill-color:unset;
  color:#FFDE59;
}

/* Label */
.elementor-25 .elementor-element.elementor-element-2371af0 .tl-label{
  font-size:15px;
  color:#E5E7EB;
}

/* Responsividade */
@media (min-width:768px){
  .elementor-25 .elementor-element.elementor-element-2371af0 .tl-heading{ font-size:36px; }
  .elementor-25 .elementor-element.elementor-element-2371af0 .tl-sub{ font-size:19px; }
}
@media (min-width:1024px){
  .elementor-25 .elementor-element.elementor-element-2371af0 .tl-heading{ font-size:40px; }
  .elementor-25 .elementor-element.elementor-element-2371af0 .tl-fact{ padding:16px 20px; }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-95ff137 *//* Container da seção */
.programa-mentores-header{
  max-width:1040px;
  margin:0 auto 28px;
  font-family:'Montserrat',sans-serif;
  text-align:center;
  position:relative;
}

/* Título principal */
.programa-mentores-titles h2{
  margin:0;
  font-weight:700;
  font-size:30px;
  color:#111827; /* quase preto */
  letter-spacing:-0.5px;
  position:relative;
  display:inline-block;
  padding-top:16px; /* espaço para a linha */
}

/* Linha em gradiente acima do título */
.programa-mentores-titles h2::before{
  content:"";
  position:absolute;
  top:0; left:50%;
  transform:translateX(-50%);
  width:56px;  
  height:3px;
  border-radius:3px;
  background:linear-gradient(90deg,#2962FF,#7C3AED);
  opacity:.9;
}

/* Subtítulo */
.programa-mentores-subtitle{
  margin:14px 0 0;
  font-size:18px;
  font-weight:500;
  line-height:1.6;
  color:#374151; /* cinza escuro */
}

/* Responsivo */
@media (min-width:1024px){
  .programa-mentores-titles h2{ font-size:34px; }
  .programa-mentores-subtitle{ font-size:20px; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-9c48ee9 *//* ===== Full-bleed: ocupa 100vw e ignora paddings da coluna ===== */
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps{
  font-family:'Montserrat',sans-serif;
  width:100vw; max-width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  margin-top:16px; margin-bottom:8px;
  position:relative;
}
.elementor-25 .elementor-element.elementor-element-9c48ee9, .elementor-25 .elementor-element.elementor-element-9c48ee9 :where(.elementor-widget-container){
  padding-left:0 !important;
  padding-right:0 !important;
}
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps, .elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps *{ box-sizing:border-box; }

/* ===== Viewport com scroll-snap ===== */
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__viewport{
  --peek: clamp(16px, 9vw, 64px);      /* quanto dos vizinhos aparece */
  --end-gap: var(--peek);              /* respiro a mais no fim p/ último não grudar */
  overflow-x:auto;
  overflow-y:visible;
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;

  /* cria as bordas internas para o peek encostar na tela */
  padding-left:  var(--peek);
  padding-right: var(--peek);

  /* respiro vertical pros dots */
  padding-top: 8px;
  padding-bottom: 34px;
}

/* esconder barra iOS/Chrome sem matar scroll */
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__viewport::-webkit-scrollbar{ display:none; }

/* ===== Track (flex) + "spacer" no fim para centralizar o último ===== */
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__track{
  display:flex;
  gap:16px;
  position:relative;
}
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__track::after{
  content:"";
  flex: 0 0 var(--end-gap);  /* garante que o último consiga ficar centralizado */
}

/* ===== Slides / Cards (mobile-first) ===== */
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__slide{
  flex: 0 0 calc(100% - var(--peek) * 2); /* um pouco menor que a viewport => peek */
  scroll-snap-align: center;
  min-width: 0;
  height:auto;
}
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__card{
  background:#1E293B;
  border:1px solid rgba(255,255,255,.08);
  border-radius:20px;
  box-shadow:0 6px 18px rgba(0,0,0,.15);
  padding: clamp(20px, 3vw, 28px);
  height:100%;
  display:flex; flex-direction:column; align-items:center; gap:10px;
  text-align:center;
  transition: box-shadow .2s ease, transform .2s ease;
}
@media (hover:hover) and (pointer:fine){
  .elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__card:hover{
    transform: translateY(-4px);
    box-shadow: 0 10px 22px rgba(0,0,0,.2);
  }
}

/* Ícone e textos */
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__icon{
  width:56px; height:56px; border-radius:999px; display:grid; place-items:center; color:#fff;
  background:radial-gradient(100% 100% at 50% 0%,rgba(255,255,255,.12) 0%,rgba(255,255,255,.04) 100%);
  border:1px solid rgba(255,255,255,.08); margin-bottom:4px;
}
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__title{ color:#FFFFFF; font-weight:700; font-size:20px; margin:0; }
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__text{  color:#E5E7EB; font-weight:500; font-size:16px; line-height:1.55; margin:0; }
@media (min-width:900px){
  .elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__title{ font-size:22px; }
  .elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__text{  font-size:17px; }
}

/* ===== Botões (setas) ===== */
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__nav{
  position:absolute; top:50%; transform:translateY(-50%);
  width:40px; height:40px; border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.07); backdrop-filter: blur(6px);
  box-shadow:0 6px 18px rgba(0,0,0,.22);
  cursor:pointer; z-index:2;
  transition: transform .2s ease, background .2s ease, border-color .2s ease, opacity .2s ease;
}
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__nav--prev{ left: clamp(6px, 2vw, 18px); }
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__nav--next{ right: clamp(6px, 2vw, 18px); }
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__nav:hover{
  transform:translateY(-50%) translateY(-2px);
  background:linear-gradient(90deg,#2962FF,#7C3AED);
  border-color:transparent;
}
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__nav--prev::before,
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__nav--next::before{
  content:""; display:block; width:14px; height:14px; border:2px solid #fff; border-left:0; border-top:0;
  position:absolute; top:50%; left:50%; transform-origin:center;
}
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__nav--next::before{ transform:translate(-50%,-50%) rotate(-45deg); }
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__nav--prev::before{ transform:translate(-50%,-50%) rotate(135deg); }
@media (max-width:480px){
  .elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__nav{ width:36px; height:36px; top:52%; }
}

/* ===== Dots ===== */
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__dots{
  display:flex; justify-content:center; align-items:center; gap:10px; margin-top:6px;
}
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__dot{
  width:8px; height:8px; border-radius:999px;
  background:#9CA3AF;
  outline:none; border:0; cursor:pointer;
  transition:transform .2s ease, background .2s ease, width .2s ease;
}
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__dot:hover{ transform:scale(1.15); }
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__dot[aria-selected="true"]{
  width:24px;
  background:linear-gradient(90deg,#2962FF,#7C3AED);
}

/* ===== Preferência do usuário ===== */
@media (prefers-reduced-motion: reduce){
  .elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__viewport{ scroll-behavior: auto; }
  .elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__card{ transition: none; }
}

/* ===== Desktop: múltiplos cartões por tela ===== */
@media (min-width: 1024px){
  .elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__viewport{
    --peek: clamp(24px, 6vw, 80px);
    --end-gap: var(--peek);
    padding-left:  var(--peek);
    padding-right: var(--peek);
  }
  .elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__track{ gap:20px; }
  .elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__slide{
    flex: 0 0 clamp(280px, 28vw, 360px);
    scroll-snap-align: start;
  }
  .elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__card{
    align-items: flex-start;
    text-align: left;
  }
  .elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__nav{ top:48%; }
}
@media (min-width:1440px){
  .elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps__slide{
    flex-basis: clamp(300px, 24vw, 420px);
  }
}

/* ===== Estado "estático": quando tudo cabe na tela ===== */
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps.is-static .pm-steps__nav{ display:none; }
.elementor-25 .elementor-element.elementor-element-9c48ee9 .pm-steps.is-static .pm-steps__dots{ display:none; }/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5426a47 *//* Container da seção */
.mentores-header{
  max-width:1040px;
  margin:0 auto 28px;
  font-family:'Montserrat',sans-serif;
  text-align:center;
  position:relative;
}

/* Título principal */
.mentores-titles h2{
  margin:0;
  font-weight:700;
  font-size:30px;
  color:#FFFFFF;
  letter-spacing:-0.5px;
  position:relative;
  display:inline-block;
  padding-top:16px; /* espaço para a linha */
}

/* Linha em gradiente acima do título */
.mentores-titles h2::before{
  content:"";
  position:absolute;
  top:0; left:50%;
  transform:translateX(-50%);
  width:56px;  /* um pouco menor que antes */
  height:3px;
  border-radius:3px;
  background:linear-gradient(90deg,#2962FF,#7C3AED);
  opacity:.9;
}

/* Subtítulo */
.mentores-subtitle{
  margin:14px 0 0;
  font-size:18px;
  font-weight:500;
  line-height:1.6;
  color:rgba(255,255,255,.85);
}

/* Responsivo */
@media (min-width:1024px){
  .mentores-titles h2{ font-size:34px; }
  .mentores-subtitle{ font-size:20px; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7f815eb *//* ===== Reset básico e box model consistente ===== */
*, *::before, *::after{
  box-sizing: border-box;
}

/* ===== Seção ===== */
.mentores{
  position: relative;
}

/* ===== Título ===== */
.mentores-title{
  font-family: Montserrat, sans-serif;
  font-weight: 700;
  color: #FFFFFF;
  text-align: center;
  font-size: 28px;
  margin: 0 0 28px;
}
@media (min-width: 768px){
  .mentores-title{
    font-size: 32px;
    margin-bottom: 32px;
  }
}

/* ===== Wrapper full-bleed (sangra à esquerda e direita) ===== */
.mentores-row-wrap{
  overflow: hidden;
  margin-left:  calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding-left:  env(safe-area-inset-left, 0px);
  padding-right: env(safe-area-inset-right, 0px);
}

/* ===== Faixa rolável (com padding lateral + gap) ===== */
.mentores-row{
  --peek: clamp(12px, 7vw, 40px);   /* respiro nas laterais */
  display: flex;
  gap: 16px;                        /* espaçamento ENTRE os cards */
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;

  /* padding nas laterais evita colar na borda e ajuda a centralizar 1º/último */
  padding: 6px var(--peek) 28px var(--peek);
  margin-bottom: -22px;
}

/* Remover QUALQUER margem herdada do 1º/último que crie saltos/colagens */
.mentores-row > .mentor-card:first-child,
.mentores-row > .mentor-card:last-child{
  margin: 0 !important;
}

/* Se houver algum ::after antigo criando espaço extra no fim, zera */
.mentores-row::after{
  content: none !important;
}

/* ===== Card ===== */
.mentor-card{
  flex: 0 0 70%;        /* mobile: ~1.4 cards visíveis */
  /* tiramos margin-right; o gap já cuida do espaçamento */
  margin: 0;

  background: #1E1E1E;
  border: 1px solid #333333;
  border-radius: 16px;
  box-shadow: 0 2px 6px #000000;
  overflow: hidden;
  color: #FFFFFF;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;

  scroll-snap-align: center;     /* centraliza no snap */
}

/* Hover (desktop) */
@media (hover:hover){
  .mentor-card:hover{
    transform: translateY(-4px);
    box-shadow: 0 4px 10px #000000;
    border-color: #FFDE59;
  }
}

/* ===== Imagem quadrada ===== */
.mentor-imgbox{
  position: relative;
  width: 100%;
  padding-top: 100%; /* mantém quadrado */
  overflow: hidden;
}
.mentor-imgbox::after{
  content: "";
  position: absolute;
  left: 0; right: 0;
  bottom: 0;
  height: 1px;
  background: #333333;
}
.mentor-imgbox img{
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ===== Conteúdo ===== */
.mentor-info{
  padding: 14px 16px 16px;
  text-align: left;
}
.mentor-info h4{
  margin: 0 0 4px;
  font-family: Montserrat, sans-serif;
  font-weight: 600;
  font-size: 18px;
  color: #FFFFFF;
}
.mentor-info p{
  margin: 0;
  font-family: Montserrat, sans-serif;
  font-size: 14px;
  color: #CCCCCC;
}
.mentor-cta {
  display: block;
  margin-top: 8px;
  font-size: 14px;
  font-weight: 600;
  color: #ffffff;
}

/* ===== Card "Ver todos os mentores" (link) ===== */
.mentor-card.ver-todos {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #1E1E1E;
  border: 1px solid #333333;
  color: #FFFFFF;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 18px;
  text-align: center;
  cursor: pointer;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
  text-decoration: none; /* remove sublinhado padrão do <a> */
}
.mentor-card.ver-todos:hover,
.mentor-card.ver-todos:active {
  transform: translateY(-4px);
  box-shadow: 0 6px 16px rgba(0,0,0,0.6);
  border-color: #FFDE59;
}
.mentor-card.ver-todos .cta-btn {
  display: inline-block;
  padding: 10px 20px;
  border: 1px solid #CCCCCC;
  border-radius: 15px;
  color: #CCCCCC;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
}
.mentor-card.ver-todos:focus-visible{
  outline: 2px solid #7C3AED;
  outline-offset: 3px;
  box-shadow: 0 0 0 3px rgba(124,58,237,.25);
}

/* ===== Proteção das imagens ===== */
.mentor-imgbox,
.mentor-imgbox img {
  -webkit-user-drag: none;
  user-drag: none;
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
}
.mentor-imgbox { position: relative; }
.mentor-imgbox .img-guard {
  position: absolute; inset: 0;
  background: transparent;
  pointer-events: auto;
}

/* ===== Navegação ===== */
.mentores-nav{
  text-align: center;
  margin-top: 12px;
}
.nav-btn{
  width: 40px; height: 40px; margin: 0 6px;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 10px;
  border: 1px solid #444444;
  background: #2C2C2C;
  color: #FFFFFF;
  font-size: 20px;
  cursor: pointer;
  transition: transform .2s ease, background .2s ease;
}
.nav-btn:hover{
  transform: translateY(-1px);
  background: #3A3A3A;
}

.sr-only {
  position: absolute !important;
  width: 1px !important; height: 1px !important;
  padding: 0 !important; margin: -1px !important;
  overflow: hidden !important; clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important; border: 0 !important;
}

/* ===== Responsividade (larguras dos cards) ===== */
@media (min-width: 768px){
  .mentor-card{ flex: 0 0 42%; }
}
@media (min-width: 1024px){
  .mentor-card{ flex: 0 0 20%; }
  .mentores-row{ --peek: clamp(24px, 6vw, 64px); }
}

/* ===== Acessibilidade ===== */
@media (prefers-reduced-motion: reduce){
  .mentor-card{ transition: none; }
  .mentores-row{ scroll-behavior: auto; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-68459c4 *//* Fundo da seção 4 */
.elementor-25 .elementor-element.elementor-element-68459c4 {
  background: linear-gradient(180deg, #0F172A 0%, #1E293B 100%);
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-931c057 *//* ===== Reset da seção CTA Duo (sem grid/esfumado/linha full-width) ===== */
.tl-cta-duo{
  position: relative;
  background: var(--bg, #0B1220);
  color: var(--text, #E5E7EB);
  padding: 24px 0 1px;
  overflow: hidden;
  isolation: isolate;
}

/* Remove quaisquer efeitos anteriores de fundo (grade + glow) */
.tl-cta-duo::before,
.tl-cta-duo::after{
  content: none !important;
  display: none !important;
}

/* Esconde a antiga linha superior full-width, se ainda existir no HTML */
.tl-cta-duo__divider{
  display: none !important;
}

/* ===== Container ===== */
.tl-cta-duo__container{
  width: min(var(--maxw, 1040px), 100% - (var(--px, 24px) * 2));
  margin-inline: auto;
  position: relative;
  z-index: 1;
  text-align: center;
}

/* ===== Título com linha sutil (acima, centrada) ===== */
.tl-cta-duo__title{
  margin: 0 0 10px 0;
  color: #fff;
  font-family: 'Montserrat', system-ui, sans-serif;
  font-weight: 700;
  font-size: 30px;    /* mobile */
  line-height: 1.25;
  position: relative;
  display: inline-block;  /* para a linha ficar centrada ao texto */
  padding-top: 16px;      /* espaço para a linha acima */
}

/* Linha simples (um pouco mais grossa), sutil e em gradiente */
.tl-cta-duo__title::before{
  content: "";
  position: absolute;
  top: 0; left: 50%;
  transform: translateX(-50%);
  width: 64px;         /* levemente mais larga */
  height: 3px;         /* “um pouco mais grossa” */
  border-radius: 3px;
  background: linear-gradient(90deg, var(--blue, #2962FF), var(--purple, #7C3AED));
  opacity: 0.95;
  filter: drop-shadow(0 1px 4px rgba(41,98,255,.25));
}

/* ===== Subtítulo ===== */
.tl-cta-duo__subtitle{
  margin: 0 auto 32px auto;
  max-width: 70ch;
  color: rgba(229,231,235,.86);
  font-family: 'Montserrat', system-ui, sans-serif;
  font-weight: 500;
  font-size: 20px;
  margin-bottom: 0 !important;
  line-height: 1.65;
  text-align: center;
}

/* ===== Responsivo ===== */
@media (min-width: 1024px){
  .tl-cta-duo__title{
    font-size: 36px;
    padding-top: 18px; /* um respiro extra no desktop */
  }
  .tl-cta-duo__title::before{
    width: 72px;
    height: 3px;
  }
  .tl-cta-duo__subtitle{
    font-size: 22px;
    margin-bottom: 40px;
  }
}

/* ===== Garantia de override em casos de conflito (Elementor/tema) ===== */
@media (max-width: 1023px){
  .tl-cta-duo .tl-cta-duo__title{
    font-size: 28px !important;
    line-height: 1.25 !important;
    margin-bottom: 10px !important;
  }
  .tl-cta-duo .tl-cta-duo__subtitle{
    font-size: 18px !important;
    line-height: 1.65 !important;
    margin-bottom: 0px !important; /* um pouco menos de espaço, se quiser */
    max-width: 70ch;
  }
}
@media (min-width: 1024px){
  .tl-cta-duo .tl-cta-duo__title{ font-size: 30px !important; }  /* ajuste fino, remova se preferir os 36px acima */
  .tl-cta-duo .tl-cta-duo__subtitle{ font-size: 20px !important; margin-bottom: 10px !important; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-53a0324 */:root{
  --bg:#0B1220; --text:#E5E7EB;
  --blue:#2962FF; --purple:#7C3AED;
  --green:#25D366; /* WhatsApp base */
  --maxw:1040px; --px:24px; --radius:16px;
}

/* ===== Seção de 2 CTAs ===== */
.tl-cta-duo{
  position:relative;
  background:#0B1220;
  color:var(--text);
  padding:24px 0 36px;
  overflow:hidden;
  isolation:isolate;
}

/* Plano de fundo (grid+glow leve) */
.tl-cta-duo::before{
  content:"";
  position:absolute; inset:-36px -6vw -28px -6vw;
  background:
    linear-gradient(to right, rgba(148,163,184,.07) 1px, transparent 1px) 0 0 / 32px 32px,
    linear-gradient(to bottom, rgba(148,163,184,.05) 1px, transparent 1px) 0 0 / 32px 32px;
  -webkit-mask-image: linear-gradient(to bottom,
    rgba(0,0,0,0) 0%, rgba(0,0,0,.6) 12%, rgba(0,0,0,.9) 40%,
    rgba(0,0,0,.9) 70%, rgba(0,0,0,.55) 86%, rgba(0,0,0,0) 100%);
          mask-image: linear-gradient(to bottom,
    rgba(0,0,0,0) 0%, rgba(0,0,0,.6) 12%, rgba(0,0,0,.9) 40%,
    rgba(0,0,0,.9) 70%, rgba(0,0,0,.55) 86%, rgba(0,0,0,0) 100%);
  opacity:.85; z-index:0;
  animation: cta-grid-pan 24s linear infinite;
}
.tl-cta-duo::after{
  content:"";
  position:absolute; left:50%; transform:translateX(-50%);
  bottom:-44px; width:120%; max-width:1200px; height:380px;
  background: radial-gradient(56% 66% at 50% 46%,
    rgba(124,58,237,.14) 0%, rgba(41,98,255,.08) 38%, rgba(11,18,32,0) 76%);
  filter:blur(12px); opacity:.88; z-index:-1;
  -webkit-mask-image: linear-gradient(to bottom,
    rgba(0,0,0,1) 0%, rgba(0,0,0,1) 68%, rgba(0,0,0,.55) 86%,
    rgba(0,0,0,.25) 93%, rgba(0,0,0,0) 100%);
          mask-image: linear-gradient(to bottom,
    rgba(0,0,0,1) 0%, rgba(0,0,0,1) 68%, rgba(0,0,0,.55) 86%,
    rgba(0,0,0,.25) 93%, rgba(0,0,0,0) 100%);
}
@keyframes cta-grid-pan{
  from{ background-position:0 0, 0 0; }
  to  { background-position:64px 0, 0 64px; }
}
@media (prefers-reduced-motion: reduce){
  .tl-cta-duo::before{ animation:none; }
}

/* Container e títulos */
.tl-cta-duo__container{
  width:min(var(--maxw), 100% - (var(--px) * 2));
  margin-inline:auto; position:relative; z-index:1;
}
.tl-cta-duo__title{
  margin:0 0 6px 0; color:#fff;
  font:700 22px/1.2 'Montserrat', system-ui, sans-serif;
}
.tl-cta-duo__subtitle{
  margin:0 0 14px 0; max-width:70ch;
  color:rgba(229,231,235,.86);
  font:500 14.5px/1.65 'Montserrat', system-ui, sans-serif;
}

/* Grid dos dois cards */
.tl-cta-duo__grid{
  display:grid;
  grid-template-columns: 1fr;          /* mobile: empilhado */
  gap: 20px;                           /* espaçamento entre os cards no mobile */
  align-items: stretch;                 /* <- garante cards com alturas iguais por linha */
}
@media (min-width:1024px){
  .tl-cta-duo__grid{
    grid-template-columns: 1fr 1fr;
    gap: 28px;                         /* espaçamento entre os cards no desktop */
    align-items: stretch;              /* <- mantém alturas iguais também no desktop */
  }
}

/* Cards */
.cta-card{
  background:#0F172A;
  border:1px solid rgba(148,163,184,.16);
  border-radius:16px;
  padding:22px 16px;
  transition:border-color .2s ease, transform .2s ease;

  /* === NOVO: faz o conteúdo ocupar a altura total e empurra o botão pro fundo === */
  display:flex;                /* layout em coluna */
  flex-direction:column;
  min-height: 100%;            /* acompanha a altura da célula do grid */
}
.cta-card:hover{ transform: translateY(-2px); border-color: rgba(124,58,237,.35); }

.cta-head{ margin-bottom:8px; }
.cta-title{
  margin:0; color:#fff;
  font:700 20px/1.25 'Montserrat', system-ui, sans-serif;
}
.cta-kicker{
  margin:6px 0 0 0;
  color: rgba(229,231,235,.92); 
  font:600 16px/1.5 'Montserrat', system-ui, sans-serif;
}

/* Lista */
.cta-list{
  margin:10px 0 12px 0; padding-left:18px;
  color:rgba(229,231,235,.86);
  font:500 16px/1.55 'Montserrat', system-ui, sans-serif;
}
.cta-list li{ margin:4px 0; }

/* Ações / botões */
.cta-actions{
  display:flex; flex-wrap:wrap; gap:10px; justify-content:center;

  /* === NOVO: cola as ações no rodapé do card, com respiro acima === */
  margin-top: auto;            /* empurra as ações para a parte de baixo */
  padding-top: 18px;           /* respiro entre o texto e o botão */
}

.btn{
  display:inline-flex; align-items:center; justify-content:center;
  min-width: 180px; padding:12px 18px; border-radius:999px;
  font:700 16px/1 'Montserrat', system-ui, sans-serif;
  text-decoration:none; color:#fff; transition: filter .2s, transform .1s;
}
.btn:active{ transform: translateY(1px); }

/* Botão gradiente genérico */
.btn-grad{
  background: linear-gradient(90deg, var(--blue), var(--purple));
  box-shadow: 0 6px 18px rgba(41,98,255,.25), 0 2px 8px rgba(124,58,237,.2);
}
.btn-grad:hover{ filter: brightness(1.08); }

/* Botão WhatsApp (verde) */
.btn-whatsapp{
  background: linear-gradient(90deg, #2BD676, #25D366);
  box-shadow: 0 6px 18px rgba(37,211,102,.25), 0 2px 8px rgba(37,211,102,.18);
}
.btn-whatsapp:hover{ filter: brightness(1.06); }

/* Botão da Mentoria (gradiente roxo/azul) */
.btn-mentoria{
  background: linear-gradient(90deg, var(--blue), var(--purple));
  box-shadow: 0 6px 18px rgba(41,98,255,.25), 0 2px 8px rgba(124,58,237,.2);
}
.btn-mentoria:hover{ filter: brightness(1.08); }

/* Refinos desktop */
@media (min-width:1024px){
  .tl-cta-duo{ padding:32px 0 48px; }
  .tl-cta-duo__title{ font-size:26px; }
  .tl-cta-duo__subtitle{ font-size:15.5px; }
  .cta-title{ font-size:20px; }
  .cta-kicker{ font-size:13.5px; }
  .btn{ min-width:200px; padding:14px 22px; font-size:15px; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-782754d */:root{
  --bg:#0B1220; --text:#E5E7EB;
  --blue:#2962FF; --purple:#7C3AED;
  --maxw:1040px; --px:24px; --radius:16px;
}

/* ===== Seção FAQ ===== */
.tl-faq{
  position:relative;
  background:#F9FAFB;
  color:var(--text);
  padding:28px 0 40px;
  overflow:hidden;
  isolation:isolate;
}

.tl-faq__title{
  margin:0 0 12px 0;
  font:700 28px/1.3 'Montserrat', system-ui, sans-serif;
  text-align:center;
  color:#111827; /* texto escuro, já que o fundo é claro */
  position:relative;
  display:inline-block;
  padding-top:16px;
}
.tl-faq__title::before{
  content:"";
  position:absolute;
  top:0; left:50%; transform:translateX(-50%);
  width:56px; height:3px;
  border-radius:2px;
  background:linear-gradient(90deg, var(--blue), var(--purple));
}

/* Container e título */
.tl-faq__container{
  width:min(var(--maxw), 100% - (var(--px) * 2));
  margin-inline:auto;
  position:relative; z-index:1;
}
.tl-faq__head{ text-align:center; margin-bottom:28px; }
.tl-faq__title{
  margin:0 0 10px 0;
  color:#111827; /* título em preto quase */
  font:700 28px/1.3 'Montserrat', system-ui, sans-serif;
}
.tl-faq__subtitle{
  margin:0 auto;
  max-width:70ch;
  color:#374151; /* cinza escuro */
  font:500 18px/1.6 'Montserrat', system-ui, sans-serif;
}

/* Grid dos grupos */
.tl-faq__grid{
  display:grid; gap:16px;
  grid-template-columns: 1fr; /* mobile */
}
@media (min-width:1024px){
  .tl-faq__grid{ grid-template-columns: 1fr 1fr; gap:20px; }
}

/* Grupo */
.faq-group{
  background:#0F172A;
  border:1px solid rgba(148,163,184,.16);
  border-radius:16px;
  padding:14px;
}
.faq-group__title{
  margin:0 0 8px 0; color:#fff;
  font:700 16px/1.3 'Montserrat', system-ui, sans-serif;
}

/* Itens (details/summary) */
.faq-item{
  border:1px solid rgba(148,163,184,.14);
  border-radius:12px;
  background:#111827;
  margin:10px 0;
  overflow:hidden;
}
.faq-q{
  list-style:none;
  cursor:pointer;
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  padding:12px 14px;
  margin:0;
  color:#fff;
  font:600 14px/1.4 'Montserrat', system-ui, sans-serif;
}
.faq-q::-webkit-details-marker{ display:none; } /* remove marcador padrão */

.faq-icon{
  flex:0 0 auto;
  width:18px; height:18px;
  position:relative;
}
.faq-icon::before, .faq-icon::after{
  content:""; position:absolute; left:50%; top:50%;
  width:14px; height:2px; background:rgba(229,231,235,.9);
  transform:translate(-50%, -50%);
  transition:transform .2s ease, opacity .2s ease;
}
.faq-icon::after{ transform:translate(-50%, -50%) rotate(90deg); } /* cria o "+" */

/* Conteúdo da resposta */
.faq-a{
  padding:0 14px 14px 14px;
  color:rgba(229,231,235,.9);
  font:500 14px/1.65 'Montserrat', system-ui, sans-serif;
}
.faq-link{
  color:#B2C7FF; text-decoration:underline; text-underline-offset:2px;
}
.faq-link:hover{ text-decoration:none; }

/* Estado aberto: vira "–" e mostra conteúdo */
.faq-item[open] .faq-icon::after{ transform:translate(-50%, -50%) rotate(0deg); }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-85a55c8 *//* ===== Footer ===== */
.tl-footer {
  background:#0B1220;
  color:rgba(229,231,235,.8);
  padding:36px 0 20px;
  border-top:1px solid rgba(148,163,184,.18);
  font-family:'Montserrat', system-ui, sans-serif;
}

.tl-footer__container {
  width:min(var(--maxw), 100% - (var(--px) * 2));
  margin-inline:auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:24px;
}

.tl-footer__brand .logo {
  font:700 22px/1 'Poppins', sans-serif;
  color:#fff;
}
.tl-footer__brand .cursor {
  color:#fff;
  animation:blink 1s step-start infinite;
}
@keyframes blink { 50% { opacity:0; } }

.tl-footer__brand .tagline {
  margin-top:6px;
  font-size:14px;
  color:rgba(229,231,235,.65);
}

.tl-footer__nav ul {
  list-style:none;
  padding:0; margin:0;
  display:flex; flex-wrap:wrap; gap:18px;
}
.tl-footer__nav a {
  color:rgba(229,231,235,.85);
  text-decoration:none;
  font-weight:500;
  transition:color .2s;
}
.tl-footer__nav a:hover { color:#fff; }

.tl-footer__copy {
  text-align:center;
  margin-top:28px;
  font-size:13px;
  color:rgba(229,231,235,.55);
}

/* Desktop refinements */
@media (min-width:1024px){
  .tl-footer__container {
    flex-direction:row;
    justify-content:space-between;
    align-items:flex-start;
    text-align:left;
  }
  .tl-footer__brand { max-width:260px; }
}/* End custom CSS */