/*
Theme Name: Prepaid
Text Domain: Prepaid
*/


:root {
  /* 🎨 Colors */
  --color-purple: #52105B;
  --color-purple-dark: #150517;
  --color-purple-light: #831692;
  --color-blue: #2CADE8;
  --color-blue-light: #38BDFA;
  --color-blue-border: #3A96C0;
  --color-pink: #F7E3FA;
  --color-purple-border: #831692;
  --color-gray: #F5F5F5;
  --color-gray-light: #F7F7F7; /* #F7F9FC */ /*  */
  --color-gray-super-light: #F6F5F2;
  --color-gray-border: #DADADA;
  --color-gray-border-dark: #BFB5B5;
  --color-gray-table-header: #DBDFE2;

  /*--font-color-gray: #595959;*/

  --color-gray-button: #CCCCCC;


  --font-color-gray: #5A5757;
  --font-color-gray-light: #858585;


  /* 🅰️ Typography */
  --font-primary: 'Inter', system-ui, sans-serif;
  
  
  --font-size-sm: 14px;
  --font-size-base: 17px;
  --font-size-medium: 18px;
  --font-size-lg: 20px;
  --font-size-xl: 30px;
  --font-size-title: 39px;
  

  /* 📏 Spacing */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 16px;
  --space-4: 24px;
  --space-5: 32px;
  --space-6: 64px;
  --space-7: 128px;

  /* 🟣 Radius & Shadow */
  --radius-sm: 6px;
  --radius-md: 12px;
  --radius-lg: 20px;
}

h2 {
  font-size: var(--font-size-title);
  font-weight: bold;
}
p { font-size: var(--font-size-base); }

h3, h4, h5, h6 { font-weight: normal; }
a {
	color: #000;
	cursor: pointer;
}
a:hover { text-shadow: 0.01em 0 currentColor, -0.01em 0 currentColor;}
p { margin: 0; } /* font-size: 14px; */

body { font-size: var(--font-size-base); }



h1, h2, h3 { margin-bottom: var(--space-1); }


/* WP area */
#wp-content p { margin: var(--space-2) 0; }
.entry-content { margin-top: var(--space-3); }

.breadcrumb {
    padding: var(--space-2) 0;
    color: var(--font-color-gray);
    margin-bottom: 0 !important
}

.stars {
  width: 150px;
  margin: auto;
  margin-bottom: var(--space-4);
  display: flex;
  justify-content: center;
}


.stars-container .stars {
  width: unset;
  margin: unset;
}

.stars-container article { align-items: flex-end; }

.post-meta,
.post-meta a { color: var(--font-color-gray); }

.bg-purple .post-meta a { color: white; }

.ads { padding: var(--space-5) 0; }

.capitalize::first-letter { text-transform: uppercase; }

.width-100 { width: 100% !important; }
.width-90 { width: 90% !important; }
.width-50 { width: 50% !important; }
.width-40 { width: 40% !important; }
.half { max-width: 50% !important; }

.font-lg { font-size: var(--font-size-lg) !important; }
.font-xl { font-size: var(--font-size-xl) !important; }

.black { color: black !important; }
.blue { color: var(--color-blue) !important; }
.white { color: white !important; }
.bg-blue.white a { color: white !important; }

.bg-purple { background: var(--color-purple) !important; }
.bg-purple-light { background: var(--color-purple-light) !important; }
.bg-purple-dark { background: var(--color-purple-dark) !important; }

.bg-white { background: white !important; }

.bg-blue { background: var(--color-blue) !important; }

.bg-blue-light { background: var(--color-blue-light) !important; }

.bg-pink { background: var(--color-pink) !important; }
.bg-pink { color: black }

.bg-gray { background: var(--color-gray) !important; }
.bg-gray-light { background: var(--color-gray-light) !important; }
.bg-gray-table-header { background: var(--color-gray-table-header) !important; }

.border-purple { border: 2px solid var(--color-purple-border) !important; }

.padding { padding: var(--space-5) !important; }
.padding-y { padding: var(--space-5) 0 !important; }
.no-padding { padding: 0 !important; }
.padding-top-0 { padding-top: 0 !important; }
.padding-top { padding-top: var(--space-5) !important; }
.margin-top-0 { margin-top: 0; }
.margin-top-vsm { margin-top: var(--space-1) }
.margin-top-sm { margin-top: var(--space-2) }
.margin-top-m { margin-top: var(--space-3) }
.margin-top-intermediate { margin-top: var(--space-4) }
.margin-top { margin-top: var(--space-5); }
.margin-top-large { margin-top: var(--space-6); }
.margin-top-xlarge { margin-top: var(--space-7) !important; }
.margin-bottom { margin-bottom: var(--space-5); }
.padding-bottom { padding-bottom: var(--space-7); }

.border-none { border: none !important; }

.container { margin: 0 auto; }

.tick-icon {
	display: flex;
	align-items: center;
	justify-content: center;
}

.tick-icon img {
	width: 35px;
	height: 35px;
	display: block;
}

img.icon {
  width: 35px;
  height: 35px;
  margin: auto;
}

.stars img {
  width: 24px;
  height: auto;
}
/*
.yellow-star {
  width: 15px;
  height: 20px;
  background-image: url('./assets/yellow-star.png');
  background-repeat: no-repeat;
  background-size: 100px 20px;
}
*/
.table-line {
    display: flex;
    justify-content: space-around;
    padding: var(--space-2);
    align-items: center;
}


.table-line:first-child { font-weight: bold; }
.table-line span { width: 20%; }

.table-line + .table-line { border-top: 1px solid var(--color-gray-border) }

.table-line-header { border-radius: 25px 25px 0 0; }
.table-line:last-child { border-radius: 0 0 25px 25px; }


.flex-start { justify-content: flex-start; }
.flex-around { justify-content: space-around; }

main section { padding: var(--space-5) 0; }
main section.big { padding: 80px 0; }
main section[class^=bg-]:not([class=bg-gray]):not([class=bg-pink]) { color: white }


h2.title {
  font-family: Inter;
  font-weight: 700;
  font-size: 39px;
  line-height: 100%;
  letter-spacing: 2%;
  text-align: center;
  margin-bottom: var(--space-6);
}

#what-to-do .step-list { display: flex; flex-direction: column; gap: 12px; margin-top: 24px }
#what-to-do article * { font-size: 17px; }
#what-to-do article h3 { font-weight: bold; }


.step-list {
  counter-reset: step;
  margin: 0;
  padding: 0;
}

.step-list .step {
  display: flex;
  gap: 5px;
  margin:0;
  position: relative;
  
}

.step-list .step::before {
  counter-increment: step;
  content: counter(step)".";
}



#limitations article,
#advantages article {
	border-radius: 25px;
	width: calc(50% - 1rem);
	padding: 32px;
}

.icon-title {
	display: flex;
	position: relative;
	gap: 1rem;
	align-items: center;
}

.icon-title > * {
	font-size: 22px;
	line-height: 35px;
	margin: 0;
}

.elements-sidebyside-middle,
.advantages {
	display: flex;
	flex-wrap: wrap;
	gap: 25px;
	margin-top: 50px;
	justify-content: center;
}

.advantages p {
	margin-top: 16px;
}


.flex-wrapper { /* margin-top: var(--space-5); */
    display: flex;
    gap: 1rem;
}

    .flex-wrapper > a {
      display: inline;
      text-align: center;
    }

    .flex-wrapper > a[class*=bg-]:not([class*=bg-gray]) {
      color: white;
      text-decoration: none;
      font-weight: bold;
    }

.box {
	background-color: #F8F8F8;
  color: black;
	border: 1px solid #DADADA;
	padding: 32px;
	border-radius: 25px;
	position: relative;
}

.box.small { padding: 16px; }

.box.bg-blue-light,
.box.bg-purple-light {
  color: white;
}

.box.bg-blue-light { border-color: var(--color-blue-border); }

.fees {
	display: flex;
	justify-content: center;
	flex-direction: column;
	gap: 16px;
	margin: 48px 0;
}


#right .box { margin-top: 32px; }

#how-much ul,
#safe ul,
#right ul {
	padding: 0;
	font-weight: bold;
	font-size: 22px;
	list-style-position: inside;
}
#right .box p { font-size: 16px }

#how-works {
  padding: 80px 0;
  color: #fff;
}

#how-works h2 {
  text-align: center;
  margin-bottom: 60px;
  font-size: 36px;
  font-weight: 700;
}
.steps {
  position: relative;
  max-width: 700px;
  margin: 0 auto 40px;
}

.steps article {
  position: relative;
  background: #fff;
  color: #1b1b1b;
  padding: 24px 24px 24px 80px;
  border-radius: 12px;
  margin-bottom: 24px;
  box-shadow: 0 8px 24px rgba(0,0,0,.12);
}

.steps {
  counter-reset: step;
}

.steps article::before {
  counter-increment: step;
  content: counter(step);
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  background: #6a1b9a;
  color: #fff;
  font-weight: 700;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  z-index: 2;
}

.steps::before {
  content: '';
  position: absolute;
  left: 40px;
  top: 0;
  width: 2px;
  height: 100%;
  background: rgba(255,255,255,.6);
}

.steps article:last-child {
  margin-bottom: 0;
}

.steps h3 {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 6px;
}

.steps p {
  font-size: 15px;
  line-height: 1.6;
  color: #555;
}

#how-works .footer-text {
  text-align: center;
  font-size: 14px;
  opacity: .9;
  max-width: 600px;
  margin: 0 auto;
}

.comparison {
  margin-top: 35px;
  border-radius: 12px;
  border: 1px solid #BFB5B5;
  background: #fff;
}

/* Header e linhas usam o mesmo grid */
.comparison .header,
.comparison article {
  display: grid;
  grid-template-columns: 1fr 2fr 2fr;
  gap: 1rem;
  padding: 1rem 1.25rem;
  align-items: center;
  text-align: center;
  border-bottom: 1px solid #BFB5B5;
}

.comparison article:last-child {
  border-bottom: none;
}

.comparison span {
  font-size: 0.95rem;
  line-height: 1.4;
  color: #333;
}

#card-comparison .footer-text {
	margin-top: 35px;
}

/* Destaque da primeira coluna */
.comparison article span:first-child {
  font-weight: 600;
}

@media (max-width: 768px) {
  .comparison .header {
    display: none;
  }

  .comparison article {
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }

  .comparison article span {
    display: block;
  }

  .comparison article span:first-child {
    margin-bottom: 0.5rem;
    font-size: 1rem;
  }
}


.usabilities article {
  width: calc(33.333% - 1rem);
  max-width: 360px;
}


.usabilities {
	display: flex;
	flex-wrap: wrap;
	gap: 25px;
	margin-top: 50px;
	justify-content: center;
}

.usabilities article {
	background: #fff;
	padding: 25px 50px;
	border-radius: 14px;
	box-shadow: 0 8px 20px rgba(0,0,0,0.08);
}

.usabilities h3 {
  font-size: 22px;
  margin-bottom: 1rem;
  color: black;
  font-weight: bold
}

.usabilities p {
  font-size: 20px;
  line-height: 1.5;
  color: #747775;
}

@media (max-width: 1024px) {
  .usabilities article {
    width: calc(50% - 1rem);
  }
}

@media (max-width: 600px) {
  .usabilities article {
    width: 100%;
  }
}





/* author */

.bg-purple .post-meta,
.bg-blue .post-meta { color: #fff; }

.post-meta {
    display: flex;
    gap: 16px;
    font-size: 14px;
    margin-top: var(--space-1);
}

.post-meta span {
    display: flex;
    align-items: center;
    gap: 6px;
}



#providers {
    padding: 4rem 0;
    text-align: center;
}


.providers-grid {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
    list-style: none;
    padding: 0;
    margin: 0;
    margin-top: 50px;
}

.providers-item img {
    max-height: 22px;
    width: auto;
    max-width: 120px;
    object-fit: contain;
    display: block;
}


.providers-item {
    background: var(--color-gray-super-light); 
    border-radius: 15px;
    padding: 20px 30px;
    display: flex;
    align-items: center;
    justify-content: center;
}



.center { text-align: center; }

/* botoes */

.btn-center {
  display: inline-flex;
  justify-content: space-around;
}

.btn,
.base-btn { /* base-btn to avoid issues in reboot css */
	display: inline-flex;
	align-items: center;
	gap: .5rem;
	padding: .75rem 1.5rem;
	border-radius: 999px;
	font-weight: 600;
	text-decoration: none;
}

/* Azul escuro */
.blue-black-btn {
	background: var(--color-blue);
	color: black;
	padding: 18px 14px;
	border-radius: 250px;
	text-decoration: none; 
}

.blue-black-btn:hover { background: var(--color-blue-light); }

.btn-purple,
.purple-btn {
  background: var(--color-purple);
  color: white;
  padding: 8px 32px;
  border-radius: 250px;
  text-decoration: none; 
}

.btn-blue,
.blue-btn {
	background: var(--color-blue);
	color: white;
	padding: 18px 14px;
	border-radius: 250px;
	text-decoration: none; 
}

.btn-blue:hover,
.blue-btn:hover {
  background: var(--color-blue-light);
  color: white;
}

.btn-gray:hover,
.gray-btn:hover {
  background: var(--color-gray-light);
}
.btn-purple:hover,
.purple-btn:hover {
  background: var(--color-purple);
  color: white;
}

/*
.btn-gray {
  background: #DCC4DF;
  padding: 18px 14px;
  border-radius: 250px;
}
*/

.box.blue-border-top { border-radius: 20px; }

/* Borda azul no topo */
.blue-border-top::before {
    content: "";
    position: absolute;
    top: 0;
    left: 5px;
    right: 5px;
    height: 6px;
    background: var(--color-blue);
    border-radius: 25px 25px 0 0;
}

.btn-fullwidth {
  display: block;
  width: 100%;
  border-radius: 15px;
  text-align: center;
  font-size: 32px;
  padding: var(--space-3) 0;
}


/* Transparente */
.transparent-btn {
	border: 1px solid rgba(255,255,255,.5);
	color: #fff;
	background: transparent;
	padding: 18px 14px;
  	border-radius: 250px;
	text-decoration: none;
}

.transparent-btn:hover {
	background: rgba(255,255,255,.1);
}

.longarrow::after {
  content: "";
  width: 16px;
  height: 8px;

  background-image: url("./assets/long-arrow.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;

  display: inline-block;
}
.transparent-btn.longarrow::after { background-image: url("./assets/arrow-white.png"); }

/* GUIDES HERO */


.home-revolut {
	background-color: white;
	border-radius: 25px;
	color: black;
	padding: 32px;
}

  .home-revolut .description * { font-size: 24px; }

  .home-revolut .tick {
    font-size: 14px;
    display: flex;
    gap: var(--space-2);
    align-items: center;
  }
    .home-revolut .tick img { width: 18px; height: 18px; }

  .home-revolut a {
    width: 90%;
    text-align: center;
    display: block;
    margin: var(--space-3) auto;
  }

  .home-revolut .flex {
    display: flex; 
    justify-content: space-between;
    gap: 1rem;
  }

  .home-revolut .flex > div {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

#hero .container {
	display: flex;
	gap: 2rem;
	align-items: center;
}

#hero .title { margin-bottom: 16px }
#hero .content { max-width: 700px; }
#hero .home-revolut { max-width: 450px; }




/** HOME HERO */
#home #hero {
	padding: 80px 0;
}

#home #hero .content {
	font-size: 20px;
} 

#home #hero .title {
	margin-top: 60px;
	font-family: Inter;
	font-weight: 700;
	font-size: 55px;
	line-height: 108%;
	letter-spacing: 0%;
	margin-bottom: 60px;

}

#home #hero .container {
	color: white;
	display: flex;
  flex-direction: column-reverse;
	align-items: center;
}

#hero .home-actions {
	display: flex;
	gap: 1rem;
	margin-top: 68px;
}

.home-media img {
	margin-top: -60px;
  max-width: 480px;
	height: auto;
}


@import url("/asstes/css/how-it-works.css");


/* reasons */

#reasons {
	background-color: var(--color-blue);
	padding: 50px 0;
	
}

#reasons .title {
	font-size: 55px;
	line-height: 53px;
	letter-spacing: 2%;
	color: white;
}

.reasons-grid {
	display: grid;
	gap: 1.5rem;
	list-style: none;
	margin-top: 50px;
	padding: 0;
}


.reasons-item {
	display: flex;
	gap: 1rem;
	align-items: center;
	position: relative;
	background: #fff;
	border-radius: 1rem;
	color: var(--font-color-gray);
	padding: 25px;
}

.reasons-item h3 {
	color: black;
}

/* Tick roxo */

#faq-aside {
	background: linear-gradient(245.82deg, #1E1E1E 0%, #000000 100%);
	padding: 50px 0 100px 0;
}

#faq-aside .title {
	font-family: Inter;
	font-weight: 700;
	font-style: Bold;
	font-size: 39px;
	line-height: 100%;
	letter-spacing: 2%;
	text-align: center;
	color: white;

}

.faq-list {
	margin-top: 50px; 
}

.faq-item {
	border: 1px solid #494949;
	border-radius: 25px;
	padding: 8px 14px;
}

.faq-item > p { margin: 0 !important; }

.faq-item + .faq-item { margin-top: 20px; }



.faq-home {
	font-family: Inter;
	font-weight: 500;
	font-size: 26px;
	letter-spacing: 2%;
	color: #A9A9A9;
}

.faq-home .title {
	text-align: center;
	}



/* Esconde respostas por padrão */
.rank-math-answer,
.schema-faq-answer { display: none; }

/* Container da pergunta: flex para alinhar texto e + */
.rank-math-question,
.schema-faq-question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    padding: 0.5rem 1rem;
    font-weight: 500;
    border-radius: 8px;
}

/* Cria o círculo com + */
.rank-math-question::after,
.schema-faq-question::after {
    content: "+";
    display: flex;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: 2px solid #333; /* cor do círculo */
    border-radius: 50%;
    font-weight: bold;
    font-size: 18px;
     /* para centralizar o texto no círculo */
    line-height: 1; /* importante para não distorcer o símbolo */
    transform-origin: center; /* garante que a rotação seja pelo centro */
    transition: transform 0.3s;
    padding-top: 2px;
}

/* Quando aberto: mostra resposta e gira o + */
.rank-math-block.open .rank-math-answer,
.schema-faq-section.open .schema-faq-answer {
    display: block;
    padding: var(--space-3);
}

.rank-math-block.open .rank-math-question::after,
.schema-faq-section.open .schema-faq-question::after {
    transform: rotate(45deg); /* + vira X */
}


/* FOOTER */
.site-footer {
	background: linear-gradient(257.46deg, #1E1E1E 0%, #000000 100%);
    color: #E6E6E6;
    padding: 4rem 2rem;
} 


.footer-column h4 {
    font-size: 0.95rem;
    margin-bottom: 1rem;
    font-weight: 600;
}

.footer-menu {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-menu li {
    margin-bottom: 0.5rem;
}

.footer-menu a {
    color: #bdbdbd;
    text-decoration: none;
}

.footer-menu a:hover {
    color: #fff;
}

.footer-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 3rem;
    flex-wrap: wrap;
    gap: 1rem;
}

.footer-social a {
    margin-left: 0.75rem;
    display: inline-flex;
}

.footer-social img {
	border-radius: 25px;
    width: 32px;
    height: 32px;
    fill: #fff;
}

.site-header { padding: var(--space-5) 0; }

.header-wrapper {
	display: flex;
	justify-content: flex-start;
	gap: var(--space-5);
}


	.site-header nav { 
		display: flex;
		justify-content: space-between;
		width: 100%;
	}

		.site-header nav ul { 
			display: flex;
			list-style: none;
			padding: 0;
			margin: 0;
			line-height: 45px
		}

		.site-header nav a { color: black; text-decoration: none; }
		.site-header[class*="bg-"] nav >ul >li > a { color: white; }
		
			.site-header nav > ul:last-child li:last-child {
				background-color: var(--color-purple);
				border-radius: 25px;
				padding: 0 var(--space-3) 
			}

			
			.site-header nav > ul:last-child li:last-child a { color: white; }
			.site-header[class*="bg-"] nav > ul:last-child li:last-child a { color: black; }
      .site-header[class*="bg-"] nav > ul:last-child li:last-child { color: white; }

      .site-header[class*="bg-"] .menu-toggle { color: white; }


.sub-menu > li { margin-left: 1em }

.menu-toggle {
  display: none;
  position: absolute;
  right: 0;
  font-size: 28px;
  background: none;
  border: none;
  cursor: pointer;
}

.main-nav {
  display: flex;
  top: 60px; 
  left: 0;
  width: 100%;
}

.main-nav .sub-menu {
  display: none;
  position: absolute;
  background: #fff;
}

.main-nav li { position: relative; }

.main-nav li:hover > .sub-menu {
  display: block;
  width: 220px;
}

.menu-item-has-children.open > .sub-menu {
  display: block;
}

.site-header img { width: 250px; height: auto; }

.site-header .logo-blue,
.site-header .logo-purple { display: none; }
.site-header .logo { display: block; }

.site-header.bg-purple .site-branding img.logo-purple { display: block; }
.site-header.bg-blue .site-branding img.logo-blue { display: block; }
.site-header[class*="bg-"] .site-branding img.logo { display: none; }



/* categories */

.article-card {
    padding: 24px;
    border-radius: 16px;
    background: #f9fafb;
    margin-bottom: 20px;
}


.article-meta{
    display: flex;
    justify-content: flex-start;
    gap: 1rem;
}
.article-card a {
    display: inline-block;
    font-weight: 600;
    color: var(--color-blue)
}

.article-card h3 { color: black }



/** SLIDER */
.swiper-slide {
  height: auto;
}

.swiper-nav {
  position: relative;
  margin: 50px auto 0;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 12px;

  width: fit-content; /* 👈 tamanho exato dos botões */
}

/* IMPORTANTÍSSIMO */
.swiper-container { overflow: hidden; }
.swiper-slide {
  width: auto !important;
}

.swiper-nav { direction: ltr; }

/* Base comum para os botões */
.swiper-button-prev,
.swiper-button-next {
  width: 36px;
  height: 36px;
  background-image: url("./assets/arrow.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 16px;
  border-radius: 50%;
  background-color: var(--color-purple);

  /* remove o ícone padrão do swiper */
}

.gray-button .swiper-button-prev,
.gray-button .swiper-button-next {
  background-color: var(--color-gray-button);
}


.dark-purple-button .swiper-button-prev,
.dark-purple-button .swiper-button-next {
  background-color: var(--color-purple-dark);
}

.swiper-wrapper { height: auto !important }

.swiper-button-prev::after,
.swiper-button-next::after {
  display: none !important;
}
.swiper-button-next svg,
.swiper-button-prev svg {
  display: none !important;
}
.swiper-button-prev { margin-right: 10px; }

.swiper-button-prev,
.swiper-button-next {
  position: relative !important;
}

.swiper-button-next {
  transform: rotate(180deg);
}



.formkit-powered-by-convertkit-container { display: none !important; }
.formkit-submit { background-color: var(--color-blue) !important }


html {
    margin-top: 0 !important;
}

#wpadminbar {
    position: fixed !important;
    top: 0;
    width: 100%;
    z-index: 9999;
}

.ads * { max-width: 100% }