 :root {
     --navy: #071b45;
     /* fundo azul escuro */
     --navy2: #06163a;
     --blue: #00aeef;
     /* azul “Angelini / Brain Pitch” */
     --blue2: #0098d2;
     --ink: #0f1b3d;
     /* texto escuro em fundo claro */
     --muted: #5b667d;
     --light: #ffffff;
     --light2: #f3f4f6;
     /* cinza claro do countdown */
     --line: #cfefff;
     --radius: 999px;

 }

 * {
     box-sizing: border-box
 }

 html {
     scroll-behavior: smooth
 }

 body {
     margin: 0;
     font-family: "Roboto", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
     color: var(--ink);
     background: var(--light);
 }

 a {
     color: inherit;
     text-decoration: none
 }

 .wrap {
     /* max-width: 1000px; */
     margin: 0 auto;
     padding: 0 22px
 }

 .wrapNav {
     width: 95vw;
     margin: 0 auto;
 }

 /* NAV */
 /* .navBar {
     position: absolute;
     left: 0;
     right: 0;
     top: 0;
     z-index: 5;

     padding: 26px 0 0;
     color: #fff;
 } */
 .navBar {
     position: fixed;
     top: 0;
     left: 0;
     width: 100%;
     z-index: 1000;
     padding: 26px 0 0;
     color: #fff;
     transition: background 0.3s ease, padding 0.3s ease;
 }

 /* estado depois do header */
 .navBar.scrolled {
     background: rgba(5, 10, 26, 0.95);
     backdrop-filter: blur(6px);
     padding: 16px 0;
 }

 .navRow {
     display: flex;
     align-items: flex-start;
     justify-content: space-between;
     gap: 18px;
 }

 .brand {
     font-weight: 800;
     letter-spacing: .6px;
     line-height: 1;
     user-select: none;
 }

 .brand .b1 {
     font-size: 16px
 }

 .brand .b2 {
     font-size: 16px;
     font-weight: 300;
     opacity: .9
 }

 .menu {
     display: flex;
     gap: 14px;
     align-items: center;
     justify-content: flex-end;
     flex-wrap: wrap;
     font-size: 12px;
     letter-spacing: .6px;
     text-transform: uppercase;
     opacity: .95;
 }

 .menu a {
     padding: 6px 2px
 }

 .menu .sep {
     opacity: .5
 }

 .homeIcon {
     width: 18px;
     height: 18px;
     display: inline-block;
     transform: translateY(2px);
 }

 /* NAV ROW */

 .navRow {
     display: flex;
     align-items: center;
     justify-content: space-between;
 }

 /* HAMBURGER */

 .hamburger {
     display: none;
     flex-direction: column;
     gap: 5px;
     cursor: pointer;
     margin-left: auto;
     /* força ir para a direita */
 }

 .hamburger span {
     width: 26px;
     height: 3px;
     background: #fff;
     display: block;
 }


 /* MOBILE MENU */

 .mobileMenu {
     display: none;
     flex-direction: column;
     gap: 18px;
     background: rgba(5, 10, 26, 0.95);
     margin-top: 20px;
     padding: 20px;
     border-radius: 6px;
 }

 .mobileMenu a {
     color: #fff;
     text-transform: uppercase;
     font-size: 14px;
 }


 /* MOBILE */

 @media (max-width:768px) {

     /* esconder menu desktop */
     nav.menu {
         display: none;
     }

     /* mostrar hamburger */
     .hamburger {
         display: flex;
     }

     .mobileMenu.open {
         display: flex;
     }

 }

 /* MOBILE */

 @media (max-width:768px) {

     .menu {
         display: none;
     }

     .hamburger {
         display: flex;
     }

     .mobileMenu.open {
         display: flex;
     }

 }

 /* HERO (igual ao PDF) */

 .hero {
     position: relative;
     min-height: 800px;
     display: flex;
     align-items: center;
     overflow: hidden;
 }

 /* VIDEO BACKGROUND */


 .heroVideo {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     object-fit: cover;
     z-index: 1;
 }

 /* overlay para escurecer */

 .heroOverlay {
     position: absolute;
     inset: 0;

     z-index: 2;
 }

 /* conteúdo acima do vídeo */

 .heroInner {
     position: relative;
     z-index: 4;
     width: 100%;
     padding: 110px 0 70px;
 }

 .heroGrid {
     display: grid;
     grid-template-columns: 1fr 1.2fr;
     gap: 24px;
     align-items: center;
 }

 /* SECÇÃO INTRO (branco) */
 .section {
     padding: 62px 0;

 }

 .intro {
     text-align: center;
 }

 .transforme {
     padding-top: 60px;
     padding-bottom: 60px;
 }

 .intro h2 {
     margin: 0;
     font-weight: 600;
     color: #25408f;
     text-transform: uppercase;
     letter-spacing: .4px;
     font-size: 32px;
 }

 .intro p {
     margin: 18px auto 0;
     max-width: 860px;
     color: #0d183f;
     font-size: 20px;
     line-height: 1.55;
     font-weight: 200;
 }

 .intro p b {
     font-weight: 700;
 }

 .btnRow {
     margin-top: 34px;
     display: flex;
     gap: 38px;
     justify-content: center;
     flex-wrap: wrap;
 }

 .btnOutline {
     padding: 14px 42px;
     border: 2px solid var(--blue);
     border-radius: var(--radius);
     color: var(--blue);
     font-weight: 600;
     font-size: 20px;
     background: transparent;
     cursor: pointer;
 }

 .btnOutline:hover {
     border-color: var(--blue2);
     color: var(--blue2)
 }

 .threeCols {
     margin-top: 56px;
     display: grid;
     grid-template-columns: repeat(3, 1fr);
     gap: 34px;
     align-items: start;
 }

 .colItem {
     text-align: center;
 }

 .colItem .iWrap {
     width: 86px;
     height: 86px;
     margin: 0 auto 16px;
     display: grid;
     place-items: center;
     color: var(--blue);
 }

 .colItem h3 {
     margin: 0;
     color: var(--blue);
     font-size: 18px;
     font-weight: 800;
 }

 .colItem p {
     margin: 10px 0 0;
     color: #0d183f;
     font-size: 20px;
     line-height: 1.6;
     font-weight: 200;
 }

 /* COUNTDOWN (cinza) */


 .count {
     background: var(--light2);
     text-align: center;
     padding: 70px 0;
 }

 .count h2 {
     margin: 0;
     font-size: 32px;
     font-weight: 600;
     color: #25408f;
     text-transform: uppercase;
 }

 .count p {
     margin: 14px 0 0;
     color: #0d183f;
     font-size: 20px;
     font-weight: 200;
 }

 .count p b {
     font-weight: 700;
 }

 .badge {
     display: inline-block;
     margin-top: 22px;
     padding: 14px 54px;
     border: 2px solid var(--blue);
     border-radius: var(--radius);
     color: var(--blue);
     font-weight: 600;
     font-size: 20px;
     background: transparent;
 }

 .digits {
     margin-top: 34px;
     display: flex;
     gap: 38px;
     justify-content: center;
     align-items: flex-end;
     flex-wrap: wrap;
 }

 .dBlock {
     min-width: 120px;
 }

 .dNum {
     font-weight: 900;
     color: var(--blue);
     font-size: 64px;
     line-height: 1;
 }

 .dLab {
     margin-top: 8px;
     color: #0d183f;
     font-size: 13px;
     letter-spacing: .4px;
 }

 .dots {
     font-size: 54px;
     color: var(--blue);
     transform: translateY(-6px);
     opacity: .9;
     user-select: none;
 }

 .deadline {
     margin-top: 22px;
     font-size: 22px;
     color: var(--blue);
     font-weight: 800;
 }

 .btnSolid {
     margin-top: 34px;
     padding: 16px 64px;
     border: none;
     border-radius: var(--radius);
     background: var(--blue);
     color: #fff;
     font-weight: 600;
     font-size: 20px;
     cursor: pointer;
 }

 .btnSolid:hover {
     background: var(--blue2)
 }

 /* DARK SECTION - O QUE É */


 .dark .wrap {
     padding-top: 50px;
 }

 .dark h1 {
     margin: 0;
     text-align: center;
     text-transform: uppercase;
     font-weight: 600;
     letter-spacing: .5px;

 }

 .dark p.lead {
     margin: 18px auto 0;
     text-align: center;
     color: #dfe7ff;
     font-size: 20px;
     line-height: 1.6;
     font-weight: 200;
 }



 .fIcon {
     display: flex;
     justify-content: center;
     align-items: center;
     color: var(--blue);
 }

 .section.dark {
     background: #0d183f;
     color: #fff;
     padding: 60px 20px;
 }

 .wrap {
     max-width: 1000px;
     margin: 0 auto;
 }

 h2 {
     text-align: center;
     margin-bottom: 40px;
     font-size: 32px;
     font-weight: 600;
 }

 .featureRows {
     display: flex;
     flex-direction: column;
     gap: 40px;
     padding-top: 50px;
 }

 .fItem {
     display: flex;
     align-items: center;
     gap: 30px;
     opacity: 0;
     transform: translateY(50px);
     transition: opacity 0.8s ease, transform 0.8s ease;
 }

 .fItem.show {
     opacity: 1;
     transform: translateY(0);
 }

 .fIcon img {
     width: 80px;
     height: auto;
 }

 .fText h3 {
     margin: 0 0 10px 0;
     color: var(--blue);

 }

 h3 {
     font-size: 23px;
 }

 .fText {
     padding: 18px 0;
     border-bottom: 1px solid var(--blue);
 }

 .fText.last {
     border-bottom: none;
 }




 .fText p {
     margin: 10px 0 0;
     color: #dfe7ff;
     font-size: 20px;
     line-height: 1.55;
     font-weight: 200;
 }

 /* JÚRI */
 .jury {
     text-align: center;
     padding: 70px 0 58px;
     background-color: #f2f2f2;
 }

 .jury h2 {
     margin: 0;
     text-transform: uppercase;
     color: #25408f;
     font-weight: 600;
     letter-spacing: .4px;
     font-size: 32px;
 }

 .juryGrid {
     margin-top: 52px;
     display: grid;
     grid-template-columns: repeat(4, 1fr);
     gap: 24px;
     align-items: start;
 }






 .juryCard img {
     padding-bottom: 20px;
 }

 .juryBottom img {
     padding-bottom: 20px;
 }


 .juryBottom {
     margin-top: 38px;
     color: var(--blue);
     font-size: 16px;
     font-weight: 700;
 }

 .juryCard {
     opacity: 0;
 }

 .juryCard.show {
     text-align: center;
     color: var(--blue);
     font-weight: 800;
     font-size: 16px;
     line-height: 1.25;
     opacity: 0;
     transform: translateY(30px);
     animation: juryFadeUp .8s ease forwards;
 }



 /* delay em cascata */
 .juryCard:nth-child(1) {
     animation-delay: .1s;
 }

 .juryCard:nth-child(2) {
     animation-delay: .3s;
 }

 .juryCard:nth-child(3) {
     animation-delay: .5s;
 }

 .juryCard:nth-child(4) {
     animation-delay: .7s;
 }

 @keyframes juryFadeUp {
     to {
         opacity: 1;
         transform: translateY(0);
     }
 }

 .juryCard img {
     padding-bottom: 20px;
     transition: transform .35s ease;
 }

 .juryCard:hover img {
     transform: scale(1.06);
 }

 .juryCard span {
     position: relative;
 }

 .juryCard span::after {
     content: "";
     position: absolute;
     left: 0;
     bottom: -4px;
     width: 0;
     height: 2px;
     background: #00aeef;
     transition: width .3s ease;
 }

 .juryCard:hover span::after {
     width: 100%;
 }




 /* COMO FUNCIONA */

 .how {

     padding: 74px 0 54px;
 }

 .how h2 {
     margin: 0;
     text-transform: uppercase;
     color: #25408f;
     font-weight: 600;
     font-size: 32px;

 }

 .how p {
     margin: 16px auto 0;
     max-width: 920px;
     font-size: 20px;
     text-align: center;
     font-weight: 200;
 }

 .steps {
     margin-top: 50px;
     max-width: 900px;
     margin-left: auto;
     margin-right: auto;
 }

 /* STEP */

 .step {
     display: flex;
     align-items: flex-start;
     gap: 28px;
     padding: 10px 0;


 }

 .step:last-child {
     border-bottom: none;
 }

 /* ICON */

 .stepIcon {
     position: relative;
     width: 90px;
     min-width: 90px;
 }

 .stepIcon .photo {
     width: 100px;

 }

 .stepIcon .n {
     position: absolute;
     left: 50px;
     top: 45px;
     transform: translate(-50%, -50%);
     font-size: 50px;
     font-weight: 900;
     color: var(--blue);
 }

 .stepIcon .linha {
     position: absolute;
     left: 50px;
     height: 45px;

     transform: translate(-50%, -50%);
     font-size: 36px;
     font-weight: 900;
     color: var(--blue);
 }

 /* TEXT */

 .stepText h3 {
     margin: 0;
     color: var(--blue);


 }

 .stepText p {
     margin: 10px 0 0;
     font-size: 20px;
     line-height: 1.6;
     font-weight: 200;
     text-align: left;
 }

 /* MOBILE */

 @media (max-width:700px) {

     .step {
         gap: 25px;
         padding-bottom: 0;
         height: 200px;
     }

     .stepIcon {
         height: 100px;
     }


     .step.linha {
         height: 30px;
     }

     .stepText p {
         font-size: 18px;
     }

     .stepIcon.photo {
         width: 100px;

     }



     .stepIcon .n {
         font-size: 28px;
         left: 50px;
         top: 45px;
     }

     .stepIcon .linha {
         top: -40px;
         height: 120px;
         width: 5px;
     }

     .heroVideo {
         position: absolute;
         top: 0;
         left: 0;
         width: 100%;
         height: 80%;
         object-fit: cover;
         z-index: 1;
     }



 }

 .step {
     opacity: 0;
 }

 /*animação*/
 .step.show {
     display: flex;
     align-items: flex-start;
     gap: 28px;
     padding: 10px 0;
     opacity: 1;
     transform: translateX(-100px);
     animation: stepFade .7s ease forwards;
 }

 .step:nth-child(1) {
     animation-delay: .1s;
 }

 .step:nth-child(3) {
     animation-delay: .3s;
 }

 .step:nth-child(5) {
     animation-delay: .5s;
 }

 .step:nth-child(7) {
     animation-delay: .7s;
 }

 @keyframes stepFade {
     to {
         opacity: 1;
         transform: translateX(0);
     }
 }

 .stepIcon .n {
     position: absolute;
     left: 50px;
     top: 45px;
     transform: translate(-50%, -50%) scale(.10);
     font-size: 50px;
     font-weight: 900;
     color: var(--blue);

     animation: numberPop .10s ease forwards;
 }

 @keyframes numberPop {
     0% {
         transform: translate(-50%, -50%) scale(.8);
     }

     70% {
         transform: translate(-50%, -50%) scale(1.1);
     }

     100% {
         transform: translate(-50%, -50%) scale(1);
     }
 }

 .step:hover .photo {
     transform: scale(1.08);
 }

 .step .photo {
     transition: transform .35s ease;
 }

 .stepIcon .linha {
     transform: translate(-50%, -50%) scaleY(0);
     transform-origin: top;
     animation: lineGrow .6s ease forwards;
 }

 @keyframes lineGrow {
     to {
         transform: translate(-50%, -50%) scaleY(1);
     }
 }




 /* BANNER QUOTE */


 .banner {
     margin-top: 50px;
     position: relative;
     height: 320px;
     /* importante */
     overflow: hidden;
 }

 /* mobile first */
 .banner {
     margin-top: 50px;
     position: relative;

     overflow: hidden;
 }

 /* apenas para browser / ecrãs maiores */
 @media (min-width: 768px) {
     .banner {
         height: 550px;
     }
 }

 /* VIDEO */

 .bannerVideo {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     object-fit: cover;
     z-index: 1;
 }

 /* OVERLAY */

 .bannerOverlay {
     position: absolute;
     inset: 0;
     background: rgba(0, 0, 0, 0.3);
     z-index: 2;
 }

 /* TEXT */

 .bannerText {
     position: absolute;
     inset: 0;
     display: flex;
     align-items: center;
     justify-content: center;
     flex-direction: column;
     text-align: center;
     color: #fff;
     padding: 0 18px;
     z-index: 3;
 }

 /* ESTADOS INICIAIS - mantidos */
 .bannerText .b1 {
     font-weight: 800;
     font-size: 50px;
     margin-bottom: 10px;
     transform: translateX(-100%);
     /* fora da tela à esquerda */
     opacity: 0;
     transition: all 1s ease;
 }

 .bannerText .b2 {
     font-weight: 300;
     font-size: 50px;
     transform: translateX(100%);
     /* fora da tela à direita */
     opacity: 0;
     transition: all 1s ease;
 }

 /* ESTADOS FINAIS - ajustados para não ficarem exatamente no centro */
 .bannerText .b1.inView {
     transform: translateX(-30%);
     /* ligeiramente à esquerda */
     opacity: 1;
 }

 .bannerText .b2.inView {
     transform: translateX(10%);
     /* ligeiramente à direita */
     opacity: 1;
 }

 /* MOBILE */

 @media (max-width:768px) {

     .banner {
         height: 140px;
     }

     .bannerText .b1 {
         font-size: 20px;
     }

     .bannerText .b2 {
         font-size: 16px;
     }

     .bannerText .b1.inView {
         transform: translateX(0%);
         /* ligeiramente à esquerda */
         opacity: 1;
     }

     .bannerText .b2.inView {
         transform: translateX(0%);
         /* ligeiramente à direita */
         opacity: 1;
     }

 }

 /* CRITÉRIOS (3 linhas com ícones grandes à esquerda) */
 .criteria {
     padding: 70px 0;
     background-color: #f2f2f2;
 }

 .criteriaGrid {
     display: grid;
     grid-template-columns: 170px 1fr;
     gap: 0 34px;
     align-items: start;
 }



 .cIcons {
     display: flex;
     flex-direction: column;
     gap: 30px;
     padding-top: 10px;
     color: var(--blue);
     align-items: center;
 }

 .cText {
     display: flex;
     flex-direction: column;
 }

 .cRow {
     padding: 20px 0;
     border-bottom: 2px solid rgba(0, 169, 230, .45);
 }

 .cRow:last-child {
     border-bottom: none
 }

 .cRow h3 {
     margin: 0;
     color: var(--blue);

     font-size: 23px;
 }

 .cRow p {
     margin: 10px 0 0;
     color: #0d183f;
     font-size: 20px;
     line-height: 1.55;
     font-weight: 200;
 }

 .cRow {
     padding: 20px 0;
     border-bottom: 2px solid rgba(0, 169, 230, .45);

     opacity: 0;
     transform: translateY(30px);
     transition: all .6s ease;
 }

 .cRow.show {
     opacity: 1;
     transform: translateY(0);
 }

 /* delay em sequência */
 .cRow:nth-child(1) {
     transition-delay: .1s;
 }

 .cRow:nth-child(2) {
     transition-delay: .3s;
 }

 .cRow:nth-child(3) {
     transition-delay: .5s;
 }

 /* QUEM PODE */
 .who {
     padding: 72px 0 62px;
     text-align: center;
 }

 .who h2 {
     margin: 0;
     text-transform: uppercase;
     color: #25408f;
     font-weight: 600;
     letter-spacing: .4px;
     font-size: 32px;
 }

 .who .sub {
     margin-top: 14px;
     color: #0d183f;
     font-size: 18px;
 }

 .who .sub small {
     display: block;
     margin-top: 6px;
     color: #4a5670;
     font-size: 13px;
 }

 .whoGrid {
     margin-top: 56px;
     display: grid;
     grid-template-columns: repeat(3, 1fr);
     gap: 26px;
     align-items: start;
 }

 .whoCard {
     text-align: center;
     padding: 0 10px;
 }

 .whoCard .icon {
     width: 90px;
     margin: 0 auto 14px;
     color: var(--blue);
 }

 .whoCard h3 {
     margin: 0;
     color: var(--blue);
     font-weight: 900;
     font-size: 18px;
 }

 .whoCard p {
     margin: 14px auto 0;
     max-width: 280px;
     color: #0d183f;
     font-size: 20px;
     line-height: 1.6;
     font-weight: 200;
 }

 .whoCard {
     text-align: center;
     padding: 0 10px;
     opacity: 0;
     transform: translateY(40px);
     transition: all .8s ease;
 }

 .whoCard.show {
     opacity: 1;
     transform: translateY(0);
 }


 /* FAQs (dark + pills) */
 .faqSec {
     background: linear-gradient(180deg, #071a43, #051233);
     color: #fff;
     padding: 76px 0 76px;
     text-align: center;
 }

 .faqSec h2 {
     margin: 0;
     font-weight: 600;
     text-transform: uppercase;
     font-size: 32px;
     letter-spacing: .4px;
 }

 .faqSec p {
     margin: 16px 0 0;
     color: #dfe7ff;
     font-size: 23px;
     font-weight: 200;
 }

 .faqList {
     margin: 42px auto 0;
     max-width: 920px;
     display: flex;
     flex-direction: column;
     gap: 18px;
 }

 /* Pill clicável */
 .faqTitle {
     border: 2px solid var(--blue);
     border-radius: var(--radius);
     padding: 18px 26px;
     text-align: left;
     color: var(--blue);
     font-weight: 900;
     font-size: 18px;
     cursor: pointer;
     background: transparent;
     position: relative;
 }

 /* Setinha */
 .faqTitle::after {
     content: "";
     position: absolute;
     right: 20px;
     top: 50%;
     transform: translateY(-50%) rotate(0deg);
     width: 10px;
     height: 10px;
     border-right: 2px solid var(--blue);
     border-bottom: 2px solid var(--blue);
     transition: transform 0.3s ease;
 }

 .faqTitle:hover::after {
     content: "";
     position: absolute;
     right: 20px;
     top: 50%;
     transform: translateY(-50%) rotate(45deg);
     width: 10px;
     height: 10px;
     border-right: 2px solid var(--blue);
     border-bottom: 2px solid var(--blue);
     transition: transform 0.3s ease;
 }

 /* Rota a seta quando abrir */
 .faqItem.open .faqTitle::after {
     transform: translateY(-50%) rotate(45deg);
     /* seta para cima */
 }

 /* Resposta fora do pill */
 .faqAnswer {
     max-height: 0;
     overflow: hidden;
     margin: 0;
     padding: 0 26px;
     color: #dfe7ff;
     font-weight: 400;
     font-size: 14px;
     line-height: 1.6;
     text-align: left;
     /* alinhamento à esquerda */
     border-left: 3px solid #00cfff;
     /* borda elegante */
     border-radius: 0 25px 25px 0;
     background: rgba(255, 255, 255, 0.05);
     /* leve fundo para destacar */
     transition: max-height 0.4s ease, margin 0.4s ease, padding 0.4s ease;
 }

 /* Abrir resposta */
 .faqItem.open .faqAnswer {
     max-height: 500px;
     /* ajusta conforme conteúdo */
     margin: 10px 50px;
     padding: 18px 26px 18px 26px;
 }

 /* Mobile */
 @media (max-width:768px) {
     .faqTitle {
         font-size: 16px;
         padding: 14px 50px 14px 50px;
     }

     .faqAnswer {
         font-size: 13px;

     }
 }

 .faqItem {
     opacity: 0;
     transform: translateY(30px);
     transition: all .6s ease;
 }

 .faqItem.show {
     opacity: 1;
     transform: translateY(0);
 }

 .faqItem:nth-child(1) {
     transition-delay: .1s
 }

 .faqItem:nth-child(2) {
     transition-delay: .2s
 }

 .faqItem:nth-child(3) {
     transition-delay: .3s
 }

 .faqItem:nth-child(4) {
     transition-delay: .4s
 }

 /* PRONTO */
 .ready {
     padding: 78px 0 46px;
     text-align: center;
 }

 .ready h2 {
     margin: 0;
     color: #25408f;
     text-transform: uppercase;
     font-weight: 600;
     letter-spacing: .4px;
     font-size: 32px;
 }

 .ready p {
     margin: 18px auto 0;
     max-width: 920px;
     color: #0d183f;
     font-size: 20px;
     line-height: 1.55;
     font-weight: 200;
 }

 .tipRow {
     margin: 54px auto 0;
     max-width: 760px;
     display: grid;
     grid-template-columns: 120px 1fr;
     gap: 22px;
     align-items: center;
     text-align: left;
 }

 .tipRow .tIcon {
     width: 92px;
     margin: 0 auto;
     color: var(--blue);
 }

 .tipRow b {
     display: block;
     color: var(--blue);
     font-size: 18px;
     font-weight: 900;
 }

 .tipRow span {
     display: block;
     margin-top: 10px;
     color: #0d183f;
     font-size: 14px;
     line-height: 1.6;
 }

 .readyBtns {
     margin: 52px 0 0;
     display: flex;
     gap: 46px;
     justify-content: center;
     flex-wrap: wrap;
 }

 .bigPill {
     padding: 16px 70px;
     border-radius: var(--radius);
     border: none;
     background: var(--blue);
     color: #fff;
     font-weight: 600;
     font-size: 22px;
     cursor: pointer;
 }

 .bigPill:hover {
     background: var(--blue2)
 }

 /* FOOTER */

 .footer {
     background: linear-gradient(180deg, #0d183f, #051233);
     color: #fff;
     padding: 22px 0;
 }

 .footRow {
     display: flex;
     align-items: flex-start;
     /* Alinha pelo topo */
     justify-content: space-between;
     gap: 16px;
     flex-wrap: wrap;
     /* Evita quebra estranha em mobile */
 }

 /* Texto alinhado à esquerda e limitado a 50% da largura */
 .ref {
     opacity: 0.9;
     font-size: 12px;
     letter-spacing: 0.6px;
     max-width: 50%;
     /* Não ultrapassa metade do footer */
     text-align: left;
 }

 /* Logo à direita */
 .logos {
     display: flex;
     align-items: center;
     justify-content: flex-end;
     gap: 26px;
     opacity: 0.95;
     font-size: 14px;
     font-weight: 700;
     max-width: 50%;
     /* Limita o tamanho para não empurrar texto */
 }

 /* Mobile: empilha elementos */
 @media (max-width: 768px) {
     .footRow {
         flex-direction: column;
         align-items: flex-start;
         gap: 12px;
     }

     .logos {
         justify-content: flex-start;
     }
 }

 /* SVG helpers */
 .stroke svg {
     stroke: currentColor;
     fill: none;
     stroke-width: 2.2;
     stroke-linecap: round;
     stroke-linejoin: round;
 }

 /* Responsive */
 @media (max-width: 980px) {
     .heroGrid {
         grid-template-columns: 1fr
     }

     .heroInner {
         padding-top: 120px
     }

     .heroTitle .l1,
     .heroTitle .l3,
     .heroTitle .l4 {
         font-size: 38px
     }

     .heroTitle .l2 {
         font-size: 26px
     }

     .threeCols {
         grid-template-columns: 1fr;
         gap: 24px
     }

     .juryGrid {
         grid-template-columns: repeat(2, 1fr)
     }

     .steps {
         grid-template-columns: 1fr
     }

     .rail {
         padding-left: 0
     }

     .rail:before {
         display: none
     }

     /* 
     .stepIcon {
         margin: 0 auto 12px
     } */

     .stepTexts {
         text-align: left
     }

     .criteriaGrid {
         grid-template-columns: 1fr
     }

     .cIcons {
         flex-direction: row;
         justify-content: center
     }

     .whoGrid {
         grid-template-columns: 1fr
     }

     .tipRow {
         grid-template-columns: 1fr;
         text-align: center
     }

     .featureRows {
         grid-template-columns: 1fr;
         text-align: center;
     }

     .fIcon {
         justify-content: center;
     }

     .fText {
         border-bottom: 2px solid rgba(0, 169, 230, .55);
         padding-bottom: 24px;
     }

     .cIcons {
         display: block;
     }
 }

 @media (max-width: 560px) {
     .menu {
         display: none
     }

     .digits {
         gap: 18px
     }

     .dots {
         display: none
     }

     .dNum {
         font-size: 56px
     }


 }

 @media (max-width: 768px) {

     .navRow {
         flex-direction: column;
         align-items: center;
         gap: 10px;
     }

     .menu {
         display: flex;
         flex-wrap: wrap;
         justify-content: center;
         gap: 12px;
         font-size: 11px;
     }

 }



 .neural-title {
     /* font-family: 'Tilt Neon', sans-serif; */
     font-size: 32px;
     color: #003b5c;
     /* cor base mais escura */
     letter-spacing: 4px;
     animation: brainPulse 2s infinite ease-in-out;
 }

 /* animação glow */

 @keyframes brainPulse {

     0% {
         text-shadow:
             0 0 2px #00cfff,
             0 0 6px #00cfff,
             0 0 12px rgba(0, 170, 255, 0.5);
     }

     50% {
         text-shadow:
             0 0 6px #00cfff,
             0 0 18px #00cfff,
             0 0 40px rgba(0, 120, 255, 0.6);
     }

     100% {
         text-shadow:
             0 0 2px #00cfff,
             0 0 6px #00cfff,
             0 0 12px rgba(0, 170, 255, 0.5);
     }

 }

 .neural-title2 {
     /* font-family: 'Tilt Neon', sans-serif; */
     font-size: 32px;
     color: #ffffff;
     /* cor base mais escura */
     letter-spacing: 4px;
     animation: brainPulse2 2s infinite ease-in-out;
 }

 /* animação glow */

 @keyframes brainPulse2 {

     0% {
         text-shadow:
             0 0 2px #00cfff,
             0 0 6px #00cfff,
             0 0 12px rgba(0, 170, 255, 0.5);
     }

     50% {
         text-shadow:
             0 0 6px #00cfff,
             0 0 18px #00cfff,
             0 0 40px rgba(0, 120, 255, 0.6);
     }

     100% {
         text-shadow:
             0 0 2px #00cfff,
             0 0 6px #00cfff,
             0 0 12px rgba(0, 170, 255, 0.5);
     }

 }

 /* Esconde os SVGs até chegar lá */
 .iWrap {
     opacity: 0;
     transform: translateY(20px);
     /* efeito leve */
     transition: opacity 0.4s ease, transform 0.4s ease;
 }

 /* Mostra o SVG e dispara animação de traço */
 .iWrap.visible {
     opacity: 1;
     transform: translateY(0);
 }

 /* Traços dos paths, polylines e polygons */
 .iWrap.visible path,
 .iWrap.visible polyline,
 .iWrap.visible polygon,
 .iWrap.visible rect {
     stroke-dasharray: 1000;
     stroke-dashoffset: 1000;
     animation: draw 5s linear forwards;
 }

 @keyframes draw {
     to {
         stroke-dashoffset: 0;
     }
 }




 @media (min-width: 768px) {
     .featureRows {
         flex-direction: column;
     }

     .fItem {
         flex-direction: row;
     }

     .heroVideoMobile {
         display: none;


     }
 }

 @media (max-width: 768px) {
     .fItem {
         flex-direction: column;
         align-items: center;
         text-align: center;
     }

     .fIcon {
         margin-bottom: 15px;
     }

     .fIcon img {
         width: 50%;
     }

     #top {

         min-height: 700px;

     }



     .hero {
         background-color: #001743;
     }

     .brand {
         display: none;
     }

     .ref {
         max-width: 100% !important;
     }

     .logos {
         justify-content: flex-end;
         max-width: 100%;
     }

     .banner {
         margin-top: 100px;
     }



     .heroVideo {
         display: none;
     }

     .heroVideoMobile {
         max-width: 100vw;
         ;
     }
 }