﻿* {
margin: 0;
padding: 0;
box-sizing: border-box;
}

h1, h2, h3, h4, h5, h6,
[class*="title"],
[class*="titulo"] {
font-family: 'Libre Baskerville', serif;
}

body {
font-family: 'Inter', sans-serif;
overflow-x: hidden;
margin: 0;
padding: 0;
background: #001028;
}

/* Scrollbar Personalizada */
/* WebKit (Chrome, Edge, Safari) */
::-webkit-scrollbar {
width: 8px;
}

::-webkit-scrollbar-track {
background: #001028;
}

::-webkit-scrollbar-thumb {
background: #1a4a7a;
border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
background: #1a6ba3;
}

/* Firefox */
* {
scrollbar-width: thin;
scrollbar-color: #1a4a7a #001028;
}

/* Para elementos com scroll */
*::-webkit-scrollbar {
width: 8px;
}

*::-webkit-scrollbar-track {
background: #001028;
}

*::-webkit-scrollbar-thumb {
background: #1a4a7a;
border-radius: 4px;
}

*::-webkit-scrollbar-thumb:hover {
background: #1a6ba3;
}

/* AnimaÃ§Ã£o da borda do header */
@keyframes borderGrow {
0% {
width: 0%;
left: 0;
}
100% {
width: 100%;
left: 0;
}
}

/* AnimaÃ§Ã£o de zoom-out da imagem de fundo */
@keyframes zoomOut {
0% {
transform: scale(1.15);
}
100% {
transform: scale(1.0);
}
}

/* Header Styles */
.header {
background: rgba(0, 16, 40, 0.35);
-webkit-backdrop-filter: blur(14px);
backdrop-filter: blur(14px);
padding: 12px 40px;
display: flex;
align-items: center;
justify-content: space-between;
position: fixed;
top: 0;
left: 0;
right: 0;
z-index: 1002;
gap: 20px;
min-height: 3.5rem;
border-bottom: 1px solid rgba(255, 255, 255, 0.1);
transition: all 0.3s ease;
}

.header.scrolled {
background: rgba(0, 16, 40, 0.8);
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
border-bottom: none;
}

body.sidebar-open {
overflow: hidden;
position: fixed;
width: 100%;
}

.header.sidebar-open {
background: #001028;
border-bottom: none;
}

.header .nav {
display: flex;
gap: 24px;
align-items: center;
position: absolute;
left: 45%;
transform: translateX(-50%);
z-index: 5;
}

.header .nav a {
color: #f5f1ed;
text-decoration: none;
font-size: 14px;
font-weight: 500;
transition: color 0.3s ease;
}

.header .nav a:hover {
color: #C9A84C;
}

/* Nav Produtos Dropdown */
.nav-produtos-dropdown {
position: relative;
}

.nav-produtos-toggle {
background: none;
border: none;
cursor: pointer;
color: #f5f1ed;
font-family: 'Inter', sans-serif;
font-size: 14px;
font-weight: 500;
display: flex;
align-items: center;
gap: 4px;
padding: 0;
transition: color 0.3s ease;
}

.nav-produtos-toggle:hover {
color: #C9A84C;
}

.nav-produtos-arrow {
flex-shrink: 0;
transition: transform 0.25s ease;
}

.nav-produtos-dropdown:hover .nav-produtos-arrow,
.nav-produtos-dropdown.open .nav-produtos-arrow {
transform: rotate(180deg);
}

.nav-produtos-menu {
position: absolute;
top: calc(100% + 14px);
left: 50%;
transform: translateX(-50%) translateY(-8px);
background: #001028;
border: 1px solid rgba(37, 135, 199, 0.3);
border-radius: 8px;
min-width: 230px;
box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45);
opacity: 0;
visibility: hidden;
transition: all 0.25s ease;
z-index: 9999;
}

.nav-produtos-dropdown:hover .nav-produtos-menu,
.nav-produtos-dropdown.open .nav-produtos-menu {
opacity: 1;
visibility: visible;
transform: translateX(-50%) translateY(0);
}

.nav-produtos-menu a {
display: block;
padding: 10px 20px;
color: #c9d3df;
text-decoration: none;
font-family: 'Inter', sans-serif;
font-size: 13.5px;
font-weight: 500;
transition: all 0.2s ease;
border-bottom: 1px solid rgba(37, 135, 199, 0.08);
}

.nav-produtos-menu a:last-child {
border-bottom: none;
}

.nav-produtos-menu a:hover,
.nav-produtos-menu a.active {
color: #C9A84C;
background: rgba(37, 135, 199, 0.1);
padding-left: 26px;
}

.nav-produtos-menu a.active {
font-weight: 600;
}

.nav-produtos-toggle.active {
color: #C9A84C;
}

.header:not(.scrolled):not(.sidebar-open)::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
height: 1px;
background: #9ca3af;
animation: borderGrow 1.5s ease-out forwards;
z-index: 1;
}

.header.scrolled::after,
.header.sidebar-open::after {
display: none;
}

.logo {
display: flex;
align-items: center;
text-decoration: none;
transition: transform 0.3s ease;
position: relative;
z-index: 10;
}

.logo img {
height: 50px;
width: auto;
object-fit: contain;
transition: transform 0.3s ease;
}

.logo:hover {
transform: scale(1.1);
}

.nav {
display: flex;
gap: 40px;
align-items: center;
}

.nav a {
color: #f5f1ed;
text-decoration: none;
font-size: 14px;
font-weight: 500;
transition: color 0.3s ease;
}

.nav a:hover {
color: #C9A84C;
}

.btn-contact {
background: #C9A84C;
color: #ffffff;
padding: 12px 28px;
border: 2px solid #C9A84C;
border-radius: 20px;
font-family: 'Inter', sans-serif;
font-weight: 600;
font-size: 14px;
cursor: pointer;
transition: all 0.3s ease;
text-decoration: none;
display: inline-block;
}

.btn-contact:hover {
background: #f5f1ed;
border-color: #f5f1ed;
color: #C9A84C;
}

/* Header Auth Buttons */
.auth-buttons {
display: flex;
gap: 10px;
align-items: center;
}

.header .auth-buttons .btn-primary,
.header .auth-buttons .btn-secondary {
padding: 10px 28px;
border-radius: 20px;
border-width: 1.5px;
font-size: 13px;
font-weight: 500;
line-height: 1;
display: inline-flex;
align-items: center;
justify-content: center;
white-space: nowrap;
}

.btn-language {
background: rgba(37, 135, 199, 0.1);
border: 2px solid #C9A84C;
box-shadow: 0 0 0 4px rgba(37, 135, 199, 0.2);
border-radius: 50%;
padding: 0;
cursor: pointer;
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
display: flex;
align-items: center;
justify-content: center;
margin-right: 30px;
position: relative;
overflow: hidden;
width: 44px;
height: 44px;
z-index: 20;
}

.btn-language:hover {
transform: scale(1.1);
box-shadow: 0 0 0 4px rgba(37, 135, 199, 0.35);
}

.btn-language svg {
width: 24px;
height: 24px;
}

.language-dropdown {
position: absolute;
top: calc(100% + 8px);
left: 50%;
right: auto;
background: #001028;
border: 1px solid rgba(37, 135, 199, 0.3);
border-radius: 8px;
min-width: 180px;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
opacity: 0;
visibility: hidden;
white-space: nowrap;
transform: translate(-50%, -10px);
transition: all 0.3s ease;
z-index: 9999;
}

.language-dropdown.active {
opacity: 1;
visibility: visible;
transform: translate(-50%, 0);
}

.language-dropdown a {
display: flex;
align-items: center;
gap: 10px;
padding: 12px 20px;
color: #f5f1ed;
text-decoration: none;
font-size: 14px;
font-weight: 500;
white-space: nowrap;
transition: all 0.3s ease;
border-bottom: 1px solid rgba(37, 135, 199, 0.1);
}

.language-flag {
font-size: 16px;
line-height: 1;
}

.language-dropdown a:last-child {
border-bottom: none;
}

.language-dropdown a:hover {
background: rgba(37, 135, 199, 0.2);
color: #C9A84C;
}

.header-right {
display: flex;
align-items: center;
gap: 14px;
position: relative;
overflow: visible;
margin-left: auto;
z-index: 10;
}

.header-right .btn-language {
margin-right: 24px;
}

/* Hero Section Styles */
.hero {
position: relative;
width: 100%;
height: 100vh;
padding-top: 3.5rem;
display: flex;
align-items: center;
justify-content: center;
background: linear-gradient(180deg, #001028 0%, #001028 100%);
overflow: hidden;
z-index: 0;
}

/* Hero Social Media Icons - Ice/Glass Style */
.hero-social {
position: absolute;
bottom: 24px;
left: 50%;
right: auto;
top: auto;
transform: translateX(-50%);
display: flex;
flex-direction: row;
gap: 16px;
z-index: 10;
}

.hero-social-link {
width: 50px;
height: 50px;
border-radius: 50%;
background: rgba(255, 255, 255, 0.05);
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
border: 1px solid rgba(255, 255, 255, 0.1);
display: flex;
align-items: center;
justify-content: center;
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
position: relative;
overflow: hidden;
}

.hero-social-link::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(135deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.05) 100%);
opacity: 0;
transition: opacity 0.3s ease;
}

.hero-social-link::after {
content: '';
position: absolute;
top: -50%;
left: -50%;
width: 200%;
height: 200%;
background: radial-gradient(circle, rgba(255, 255, 255, 0.1) 0%, transparent 70%);
opacity: 0;
transition: opacity 0.3s ease;
}

.hero-social-link:hover {
background: rgba(255, 255, 255, 0.1);
border-color: rgba(255, 255, 255, 0.3);
transform: scale(1.1);
box-shadow:
0 8px 32px rgba(0, 0, 0, 0.3),
0 0 0 1px rgba(255, 255, 255, 0.1),
inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

.hero-social-link:hover::before {
opacity: 1;
}

.hero-social-link:hover::after {
opacity: 1;
}

.hero-social-link svg {
width: 24px;
height: 24px;
fill: #ffffff;
position: relative;
z-index: 1;
transition: all 0.3s ease;
}

.hero-social-link:hover svg {
fill: rgba(255, 255, 255, 0.9);
transform: scale(1.1);
}

.hero-bg {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-image: url('/assets/imagens/bg_home.png');
background-size: cover;
background-position: center;
background-repeat: no-repeat;
animation: zoomOut 5s ease-out forwards;
}

.hero-bg.hero-bg-assinatura {
background-image: url('/assets/imagens/assinatura.png');
animation: zoomOut 5s ease-out forwards;
opacity: 1;
visibility: visible;
display: block;
will-change: transform;
}

/* AutenticaÃ§Ã£o Page - Hero Modifier */
.hero-autenticacao {
/* Esta classe permite customizaÃ§Ãµes especÃ­ficas para a pÃ¡gina de autenticaÃ§Ã£o
   sem afetar a pÃ¡gina home. Herda todos os estilos da .hero */
}

/* Carta FianÃ§a Page - Hero Background */
body[data-page="carta-fianca"] .hero-bg.hero-bg-assinatura {
background-image: url('/assets/imagens/backgroud-carta.png');
}

.hero-autenticacao .hero-title {
margin-bottom: 20px;
}

/* Como Funciona Section */
.como-funciona-section {
background: #ffff;
padding: 80px 40px;
width: 100%;
}

.como-funciona-container {
max-width: 1400px;
margin: 0 auto;
}

.como-funciona-header {
text-align: center;
margin-bottom: 60px;
}

.como-funciona-title {
color: #C9A84C;
font-family: 'Inter', sans-serif;
font-size: 14px;
font-weight: 600;
letter-spacing: 3px;
text-transform: uppercase;
margin-bottom: 20px;
}

.como-funciona-subtitle {
color: #001028;
font-family: 'Inter', sans-serif;
font-size: 36px;
font-weight: 700;
line-height: 1.3;
margin-bottom: 20px;
max-width: 800px;
margin-left: auto;
margin-right: auto;
}

.como-funciona-description {
color: #4b5563;
font-family: 'Inter', sans-serif;
font-size: 16px;
line-height: 1.6;
max-width: 700px;
margin: 0 auto;
}

.como-funciona-cards {
display: grid;
grid-template-columns: 1fr;
gap: 40px;
max-width: 1000px;
margin: 0 auto;
}

.como-funciona-card {
background: #ffffff;
border-radius: 16px;
padding: 40px;
display: flex;
flex-direction: row;
gap: 40px;
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
position: relative;
overflow: hidden;
align-items: center;
}

.como-funciona-card:hover {
transform: translateY(-8px);
box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12);
}

.card-number {
font-size: 48px;
font-weight: 700;
color: #C9A84C;
font-family: 'Inter', sans-serif;
line-height: 1;
opacity: 0.3;
}

.card-content {
flex: 1;
display: flex;
flex-direction: column;
align-items: flex-start;
text-align: left;
}

.card-title {
color: #001028;
font-family: 'Inter', sans-serif;
font-size: 20px;
font-weight: 600;
margin-bottom: 12px;
line-height: 1.4;
}

.card-text {
color: #4b5563;
font-family: 'Inter', sans-serif;
font-size: 15px;
line-height: 1.6;
}

.card-image {
flex: 0 0 520px;
height: 300px;
background: #f3f4f6;
border-radius: 12px;
overflow: hidden;
display: flex;
align-items: center;
justify-content: center;
}

.card-image img {
width: 100%;
height: 100%;
object-fit: cover;
}

.card-btn {
display: inline-flex;
align-items: center;
justify-content: center;
background: #F4C35A;
color: #1a1a2e;
text-decoration: none;
padding: 12px 28px;
border-radius: 10px;
font-family: 'Inter', sans-serif;
font-size: 15px;
font-weight: 700;
text-align: center;
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
margin-top: 16px;
border: 2px solid #F4C35A;
cursor: pointer;
box-shadow: 0 4px 14px rgba(244, 195, 90, 0.35);
letter-spacing: 0.3px;
}

.card-btn:hover {
background: #e6b045;
border-color: #e6b045;
color: #1a1a2e;
transform: translateY(-3px);
box-shadow: 0 8px 20px rgba(244, 195, 90, 0.45);
}

.card-btn:active {
transform: translateY(-1px);
box-shadow: 0 4px 12px rgba(244, 195, 90, 0.3);
}

/* Card de AutenticaÃ§Ã£o - Single Card Container */
.como-funciona-cards-single {
display: flex;
justify-content: center;
align-items: center;
padding: 40px 0;
}

.auth-card {
background: linear-gradient(135deg, rgba(0, 16, 40, 0.95) 0%, rgba(0, 26, 54, 0.92) 100%);
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
border-radius: 24px;
padding: 60px 80px;
box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
max-width: 640px;
width: 100%;
margin: 0 auto;
position: relative;
}

.auth-card-content {
position: relative;
z-index: 1;
text-align: center;
}

.auth-card-title {
color: #ffffff;
font-family: 'Inter', sans-serif;
font-size: 32px;
font-weight: 700;
margin-bottom: 16px;
line-height: 1.3;
letter-spacing: -0.5px;
}

.auth-card-description {
color: rgba(255, 255, 255, 0.8);
font-family: 'Inter', sans-serif;
font-size: 16px;
line-height: 1.6;
margin-bottom: 40px;
}

.auth-form {
display: flex;
flex-direction: column;
gap: 24px;
align-items: center;
}

.form-group {
width: 100%;
text-align: left;
}

.form-label {
display: block;
color: #ffffff;
font-family: 'Inter', sans-serif;
font-size: 14px;
font-weight: 600;
margin-bottom: 8px;
letter-spacing: 0.3px;
}

.form-input {
width: 100%;
padding: 16px 20px;
background: rgba(255, 255, 255, 0.08);
border: 2px solid rgba(255, 255, 255, 0.15);
border-radius: 12px;
color: #ffffff;
font-family: 'Inter', sans-serif;
font-size: 16px;
transition: all 0.3s ease;
outline: none;
}

.form-input::placeholder {
color: rgba(255, 255, 255, 0.5);
}

.form-input:focus {
background: rgba(255, 255, 255, 0.12);
border-color: #C9A84C;
box-shadow: 0 0 0 4px rgba(37, 135, 199, 0.15);
}

.auth-submit-btn {
display: inline-flex;
align-items: center;
justify-content: center;
background: #F4C35A;
color: #1a1a2e;
text-decoration: none;
padding: 14px 32px;
border-radius: 8px;
font-family: 'Inter', sans-serif;
font-size: 15px;
font-weight: 700;
text-align: center;
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
border: 2px solid #F4C35A;
cursor: pointer;
letter-spacing: 0.2px;
width: 80%;
}

.auth-submit-btn:hover {
background: #e6b045;
border-color: #e6b045;
color: #1a1a2e;
transform: translateY(-1px);
box-shadow: 0 8px 24px rgba(244, 195, 90, 0.45);
}

.auth-submit-btn:active {
transform: translateY(0);
box-shadow: 0 4px 12px rgba(244, 195, 90, 0.3);
}

@media (max-width: 1024px) {
.como-funciona-card {
flex-direction: column;
gap: 20px;
padding: 30px;
}

.card-content {
align-items: center;
text-align: center;
}

.card-image {
flex: 0 0 auto;
width: 100%;
height: 200px;
}

.auth-card {
padding: 50px 60px;
}

.auth-card-title {
font-size: 28px;
}

.auth-card-description {
font-size: 15px;
}
}

@media (max-width: 768px) {
.como-funciona-section {
padding: 60px 20px;
}

.como-funciona-subtitle {
font-size: 28px;
}

.como-funciona-description {
font-size: 15px;
}

.como-funciona-cards {
grid-template-columns: 1fr;
gap: 20px;
}

.como-funciona-card {
padding: 24px;
}

.auth-card {
padding: 40px 30px;
}

.auth-card-title {
font-size: 24px;
}

.auth-card-description {
font-size: 14px;
margin-bottom: 30px;
}

.form-input {
padding: 14px 16px;
font-size: 15px;
}

.auth-submit-btn {
padding: 12px 28px;
font-size: 14px;
}
}

.hero-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(to right, rgba(0, 16, 40, 0.88) 0%, rgba(0, 16, 40, 0.72) 28%, rgba(0, 16, 40, 0.30) 58%, rgba(0, 16, 40, 0.0) 100%);
}

.hero-content {
position: relative;
z-index: 1;
width: 100%;
padding: 40px 40px 80px;
text-align: left;
margin-top: 17rem;
}

.hero-content.hero-content-split {
display: flex;
align-items: flex-start;
gap: 48px;
justify-content: space-between;
padding: 80px 120px 80px 60px;
margin-top: 0;
}

.hero-subtitle {
color: #9ca3af;
font-family: 'Inter', sans-serif;
font-weight: 400;
font-size: 16px;
letter-spacing: 3px;
margin-bottom: 40px;
text-transform: uppercase;
}

.hero-title {
color: #ffffff;
font-family: 'Inter', sans-serif;
font-weight: 700;
font-size: 48px;
line-height: 1.3;
margin-bottom: 40px;
max-width: 800px;
min-height: 120px;
transition: opacity 0.5s ease-in-out, transform 0.5s ease-in-out;
}

.hero-title-text {
display: inline-block;
font-family: 'Inter', sans-serif;
font-size: 18px;
color: #9ca3af;
letter-spacing: 1px;
font-weight: 400;
transition: opacity 0.5s ease-in-out, transform 0.5s ease-in-out;
vertical-align: middle;
}

.hero-title-text.fade-out {
opacity: 0;
transform: translateY(-10px);
}

.hero-title-text.fade-in {
opacity: 1;
transform: translateY(0);
}

.hero-title-description {
display: inline-block;
width: 30px;
height: 1px;
background: #9ca3af;
vertical-align: middle;
border-radius: 2px;
transition: opacity 0.5s ease-in-out, transform 0.5s ease-in-out;
}

.hero-title-description.fade-out {
opacity: 0;
transform: translateY(-10px);
}

.hero-title-description.fade-in {
opacity: 1;
transform: translateY(0);
}

.hero-title-dash {
display: block;
font-size: 48px;
color: #ffffff;
font-weight: 700;
line-height: 1.3;
margin-bottom: 16px;
max-width: 800px;
transition: opacity 0.5s ease-in-out, transform 0.5s ease-in-out;
}

.hero-title-dash.fade-out {
opacity: 0;
transform: translateY(-10px);
}

.hero-title-dash.fade-in {
opacity: 1;
transform: translateY(0);
}

.hero-text {
display: flex;
flex-direction: column;
gap: 24px;
}

.hero-description {
color: #d1d5db;
font-family: 'Inter', sans-serif;
font-size: 18px;
font-weight: 400;
line-height: 1.6;
max-width: 600px;
margin: 0;
}

.hero-buttons {
display: flex;
gap: 20px;
flex-wrap: wrap;
}

.btn-primary {
background: #C9A84C;
color: #ffffff;
padding: 12px 32px;
border: 2px solid #C9A84C;
border-radius: 20px;
font-family: 'Inter', sans-serif;
font-weight: 600;
font-size: 16px;
cursor: pointer;
transition: all 0.3s ease;
text-decoration: none;
display: inline-block;
}

.btn-primary:hover {
background: #f5f1ed;
border-color: #f5f1ed;
color: #C9A84C;
}

.btn-secondary {
background: rgba(0, 16, 40, 0.6);
backdrop-filter: blur(8px);
color: #ffffff;
padding: 12px 32px;
border: 2px solid rgba(255, 255, 255, 0.3);
border-radius: 20px;
font-family: 'Inter', sans-serif;
font-weight: 600;
font-size: 16px;
cursor: pointer;
transition: all 0.3s ease;
text-decoration: none;
display: inline-block;
}

.btn-secondary:hover {
background: #f5f1ed;
border-color: #f5f1ed;
color: #C9A84C;
}

/* â”€â”€ Hero split layout â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.hero-content-split {
display: flex;
align-items: center;
gap: 48px;
justify-content: space-between;
padding: 40px 60px 80px;
margin-top: 0;
}

.hero-left {
flex: 1;
max-width: 560px;
}

/* subtitle under title */
.hero-subtitle-new {
color: rgba(255,255,255,0.72);
font-family: 'Inter', sans-serif;
font-size: 16px;
font-weight: 400;
line-height: 1.65;
margin: 0 0 32px;
max-width: 480px;
}

/* CTA buttons row */
.hero-cta-buttons {
display: flex;
gap: 16px;
flex-wrap: wrap;
align-items: center;
}

.btn-hero-gold {
display: inline-flex;
align-items: center;
gap: 8px;
background: #F4C35A;
color: #1a1a2e;
padding: 13px 28px;
border: 2px solid #F4C35A;
border-radius: 10px;
font-family: 'Inter', sans-serif;
font-weight: 700;
font-size: 15px;
cursor: pointer;
text-decoration: none;
transition: all 0.25s ease;
white-space: nowrap;
}

.btn-hero-gold:hover {
background: #e6b045;
border-color: #e6b045;
color: #1a1a2e;
box-shadow: 0 8px 24px rgba(244,195,90,0.35);
}

.btn-hero-outline {
display: inline-flex;
align-items: center;
gap: 8px;
background: transparent;
color: #ffffff;
padding: 13px 28px;
border: 2px solid rgba(255,255,255,0.55);
border-radius: 10px;
font-family: 'Inter', sans-serif;
font-weight: 600;
font-size: 15px;
cursor: pointer;
text-decoration: none;
transition: all 0.25s ease;
white-space: nowrap;
}

.btn-hero-outline:hover {
background: rgba(255,255,255,0.1);
border-color: #ffffff;
color: #ffffff;
}

/* â”€â”€ Hero form card â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.hero-form-card {
flex-shrink: 0;
width: 340px;
background: rgba(0,10,30,0.68);
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
border: 1px solid rgba(255,255,255,0.14);
border-radius: 10px;
padding: 28px 26px 22px;
}

.hero-form-header {
display: flex;
align-items: flex-start;
gap: 14px;
margin-bottom: 22px;
}

.hero-form-icon-circle {
flex-shrink: 0;
width: 46px;
height: 46px;
background: transparent;
border: 2px solid #F4C35A;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
color: #F4C35A;
}

.hero-form-title {
color: #ffffff;
font-family: 'Inter', sans-serif;
font-weight: 700;
font-size: 16px;
margin: 0 0 4px;
}

.hero-form-desc {
color: rgba(255,255,255,0.65);
font-family: 'Inter', sans-serif;
font-size: 13px;
margin: 0;
line-height: 1.45;
}

.hero-form {
display: flex;
flex-direction: column;
gap: 12px;
margin-bottom: 16px;
}

.hero-input {
width: 100%;
padding: 11px 16px;
background: rgba(255,255,255,0.1);
border: 1px solid rgba(255,255,255,0.22);
border-radius: 10px;
color: #ffffff;
font-family: 'Inter', sans-serif;
font-size: 14px;
outline: none;
transition: border-color 0.2s;
box-sizing: border-box;
}

.hero-input::placeholder {
color: rgba(255,255,255,0.5);
}

.hero-input:focus {
border-color: #F4C35A;
}

.hero-select {
appearance: none;
-webkit-appearance: none;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='rgba(255,255,255,0.6)'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: right 12px center;
background-size: 20px;
cursor: pointer;
}

.hero-select option {
background: #1a2640;
color: #fff;
}

.btn-hero-full {
width: 100%;
justify-content: center;
border-radius: 10px;
padding: 13px;
font-size: 15px;
}

.btn-hero-gold.btn-hero-full:hover {
transform: none;
box-shadow: 0 8px 24px rgba(244,195,90,0.35);
}

/* â”€â”€ Hero custom select / dropdown â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.hero-custom-select {
position: relative;
width: 100%;
}

.hero-select-trigger {
width: 100%;
padding: 11px 16px;
background: rgba(255,255,255,0.1);
border: 1px solid rgba(255,255,255,0.22);
border-radius: 10px;
color: rgba(255,255,255,0.5);
font-family: 'Inter', sans-serif;
font-size: 14px;
cursor: pointer;
display: flex;
align-items: center;
gap: 10px;
box-sizing: border-box;
transition: border-color 0.2s;
user-select: none;
-webkit-user-select: none;
}

.hero-custom-select.open .hero-select-trigger {
border-color: #F4C35A;
}

.hero-custom-select.selected .hero-select-trigger {
color: #ffffff;
}

.hero-select-icon {
flex-shrink: 0;
display: flex;
align-items: center;
color: rgba(255,255,255,0.45);
transition: color 0.2s;
}

.hero-custom-select.selected .hero-select-icon,
.hero-custom-select.open .hero-select-icon {
color: #F4C35A;
}

.hero-select-value {
flex: 1;
}

.hero-select-arrow {
flex-shrink: 0;
display: flex;
align-items: center;
color: rgba(255,255,255,0.6);
transition: transform 0.22s ease;
}

.hero-custom-select.open .hero-select-arrow {
transform: rotate(180deg);
}

.hero-select-options {
position: absolute;
top: calc(100% + 6px);
left: 0;
right: 0;
background: #0d1f40;
border: 1px solid rgba(255,255,255,0.14);
border-radius: 10px;
overflow-y: auto;
max-height: 200px;
z-index: 200;
display: none;
box-shadow: 0 10px 28px rgba(0,0,0,0.5);
}
.hero-select-options::-webkit-scrollbar {
width: 4px;
}
.hero-select-options::-webkit-scrollbar-track {
background: transparent;
}
.hero-select-options::-webkit-scrollbar-thumb {
background: rgba(255,255,255,0.2);
border-radius: 4px;
}

.hero-custom-select.open .hero-select-options {
display: block;
}

.hero-select-option {
padding: 10px 16px;
color: rgba(255,255,255,0.78);
font-family: 'Inter', sans-serif;
font-size: 14px;
cursor: pointer;
transition: all 0.15s;
border-bottom: 1px solid rgba(255,255,255,0.06);
}

.hero-select-option:last-child {
border-bottom: none;
}

.hero-select-option:hover {
background: rgba(244,195,90,0.12);
color: #F4C35A;
padding-left: 22px;
}

.hero-select-option.selected {
color: #F4C35A;
background: rgba(244,195,90,0.08);
}

.hero-form-security {
display: flex;
align-items: center;
justify-content: center;
gap: 6px;
color: rgba(255,255,255,0.5);
font-family: 'Inter', sans-serif;
font-size: 12px;
margin-top: 4px;
}

/* â”€â”€ Hero trust badges â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.hero-trust-badges {
display: flex;
gap: 20px;
flex-wrap: wrap;
margin-top: 24px;
}

.hero-trust-item {
display: flex;
align-items: center;
gap: 8px;
}

.hero-trust-check {
flex-shrink: 0;
width: 22px;
height: 22px;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
color: #F4C35A;
}

.hero-trust-label {
font-family: 'Inter', sans-serif;
font-size: 13px;
color: rgba(255,255,255,0.75);
white-space: nowrap;
}

/* â”€â”€ Stats bar â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.hero-stats-section {
background: linear-gradient(to bottom, #001028 50%, #F8F5F0 50%);
padding: 16px 40px;
position: relative;
z-index: 20;
margin-top: -60px;
}

.hero-stats-section::after {
content: '';
position: absolute;
top: 50%;
left: 0;
right: 0;
height: 2px;
background: #C9A84C;
transform: translateY(-50%);
z-index: 1;
pointer-events: none;
}

.hero-stats-bar {
background: #ffffff;
border-radius: 16px;
max-width: 1100px;
margin: 0 auto;
overflow: hidden;
padding: 0;
position: relative;
z-index: 10;
box-shadow: 0 4px 24px rgba(0,0,0,0.10);
}

.hero-stats-inner {
display: flex;
align-items: stretch;
max-width: 100%;
margin: 0;
padding: 0;
}

.hero-stat-item {
flex: 1;
display: flex;
align-items: center;
gap: 14px;
padding: 28px 32px;
}

.hero-stat-divider {
width: 1px;
background: #e5e7eb;
margin: 20px 0;
}

.hero-stat-icon {
flex-shrink: 0;
color: #1a1a2e;
}

.hero-stat-text {
display: flex;
flex-direction: column;
}

.hero-stat-text strong {
font-family: 'Inter', sans-serif;
font-weight: 700;
font-size: 15px;
color: #1a1a2e;
line-height: 1.2;
}

.hero-stat-text span {
font-family: 'Inter', sans-serif;
font-size: 13px;
color: rgba(26,26,46,0.65);
margin-top: 2px;
line-height: 1.3;
}

/* HambÃºrguer Menu */
.hamburger {
display: none;
flex-direction: column;
gap: 5px;
background: transparent;
border: none;
cursor: pointer;
padding: 8px;
z-index: 1001;
}

.hamburger span {
display: block;
width: 24px;
height: 2px;
background: #ffffff;
transition: all 0.3s ease;
border-radius: 2px;
}

.hamburger.active span:nth-child(1) {
transform: rotate(45deg) translate(5px, 5px);
}

.hamburger.active span:nth-child(2) {
opacity: 0;
}

.hamburger.active span:nth-child(3) {
transform: rotate(-45deg) translate(7px, -6px);
}

/* Sidebar - Desktop (opens from right) */
.sidebar {
position: fixed;
top: 0;
right: 0;
width: 400px;
height: 100vh;
background: #001028;
box-shadow: -4px 0 20px rgba(0, 0, 0, 0.3);
transition: transform 0.6s cubic-bezier(0.65, 0, 0.35, 1), opacity 0.6s cubic-bezier(0.65, 0, 0.35, 1), visibility 0.6s cubic-bezier(0.65, 0, 0.35, 1);
z-index: 1050;
transform: translateX(100%);
overflow: hidden;
display: block;
opacity: 0;
visibility: hidden;
}

.sidebar.active {
transform: translateX(0);
opacity: 1;
visibility: visible;
}

.sidebar-content {
padding: 24px;
display: flex;
flex-direction: column;
gap: 16px;
height: 100%;
overflow-y: auto;
scrollbar-width: thin;
scrollbar-color: rgba(37, 135, 199, 0.35) transparent;
}

.sidebar-content::-webkit-scrollbar {
width: 4px;
}

.sidebar-content::-webkit-scrollbar-thumb {
background: rgba(37, 135, 199, 0.4);
border-radius: 2px;
}

.sidebar-nav {
display: flex;
flex-direction: column;
gap: 2px;
}

.sidebar-link {
color: #ffffff;
text-decoration: none;
padding: 12px 16px;
border-radius: 6px;
font-family: 'Inter', sans-serif;
font-size: 14px;
transition: all 0.3s ease;
display: block;
}

.sidebar-link:hover {
background: rgba(37, 135, 199, 0.1);
color: #C9A84C;
transform: translateX(3px);
}

/* Sidebar dropdown / submenu */
.sidebar-dropdown {
position: relative;
}

.sidebar-dropdown-toggle {
width: 100%;
background: none;
border: none;
cursor: pointer;
display: flex;
align-items: center;
justify-content: flex-start;
gap: 6px;
text-align: left;
}

.sidebar-dropdown-toggle:hover {
background: rgba(37, 135, 199, 0.1);
color: #C9A84C;
transform: translateX(3px);
}

.sidebar-dropdown-arrow {
flex-shrink: 0;
transition: transform 0.25s ease;
}

.sidebar-dropdown.open .sidebar-dropdown-arrow {
transform: rotate(180deg);
}

.sidebar-submenu {
overflow: hidden;
max-height: 0;
transition: max-height 0.35s ease;
padding-left: 16px;
position: relative;
}

.sidebar-submenu::before {
content: '';
position: absolute;
left: 8px;
top: 0;
bottom: 0;
width: 2px;
border-radius: 2px;
background: linear-gradient(to bottom, #F4E27A, #C9A84C);
opacity: 0;
transition: opacity 0.3s ease;
}

.sidebar-dropdown.open .sidebar-submenu {
max-height: 420px;
}

.sidebar-dropdown.open .sidebar-submenu::before {
opacity: 1;
}

.sidebar-submenu-link {
display: block;
color: #c9d3df;
text-decoration: none;
padding: 9px 12px;
border-radius: 6px;
font-family: 'Inter', sans-serif;
font-size: 13px;
transition: all 0.2s ease;
}

.sidebar-submenu-link:hover,
.sidebar-submenu-link.active {
color: #C9A84C;
background: rgba(37, 135, 199, 0.08);
transform: translateX(3px);
}

.sidebar-submenu-link.active {
font-weight: 600;
}

.sidebar-dropdown-toggle.active {
color: #C9A84C;
}

.sidebar-actions {
display: flex;
flex-direction: column;
gap: 16px;
}

.sidebar-language {
background: transparent;
border: none;
border-radius: 10px;
padding: 12px 16px;
display: flex;
justify-content: center;
align-items: center;
gap: 12px;
}

.sidebar-lang-flag {
width: 42px;
height: 42px;
border-radius: 50%;
border: 2px solid #d1d5db;
background: transparent;
padding: 0;
cursor: pointer;
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
display: flex;
align-items: center;
justify-content: center;
position: relative;
overflow: hidden;
}

.sidebar-lang-flag:hover {
transform: scale(1.1);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

.sidebar-lang-flag.active {
border-color: #C9A84C;
box-shadow: 0 0 0 4px rgba(37, 135, 199, 0.2);
background: rgba(37, 135, 199, 0.1);
}

.lang-flag {
width: 100%;
height: 100%;
border-radius: 50%;
background-size: cover;
background-position: center;
background-repeat: no-repeat;
display: block;
}

.sidebar-lang-flag:hover {
box-shadow: 0 0 0 4px rgba(37, 135, 199, 0.2);
}

.btn-contact-sidebar {
background: #C9A84C;
border: 2px solid rgba(255, 255, 255, 0.3);
border-radius: 12px;
padding: 15px 20px;
color: #ffffff;
text-align: center;
text-decoration: none;
font-family: 'Inter', sans-serif;
font-weight: 600;
font-size: 15px;
transition: all 0.3s ease;
display: block;
}

.btn-contact-sidebar:hover {
background: #1a6ba3;
transform: translateY(-2px);
box-shadow: 0 6px 16px rgba(37, 135, 199, 0.3);
}

/* Sidebar Auth Buttons - same style as header */
.sidebar-auth-buttons {
display: flex;
flex-direction: column;
gap: 10px;
margin-top: 16px;
}

.sidebar .btn-primary,
.sidebar .btn-secondary {
width: 100%;
text-align: center;
padding: 10px 20px;
font-size: 13px;
}

.sidebar .btn-primary {
background: #C9A84C;
border: 2px solid #C9A84C;
border-radius: 20px;
color: #ffffff;
text-decoration: none;
display: inline-flex;
align-items: center;
justify-content: center;
transition: all 0.3s ease;
}

.sidebar .btn-primary:hover {
background: #f5f1ed;
border-color: #f5f1ed;
color: #C9A84C;
}

.sidebar .btn-secondary {
background: rgba(0, 16, 40, 0.6);
backdrop-filter: blur(8px);
border: 2px solid rgba(255, 255, 255, 0.3);
border-radius: 20px;
color: #ffffff;
text-decoration: none;
display: inline-flex;
align-items: center;
justify-content: center;
transition: all 0.3s ease;
}

.sidebar .btn-secondary:hover {
background: #f5f1ed;
border-color: #f5f1ed;
color: #C9A84C;
}

/* Sidebar Overlay */
.sidebar-overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100vh;
background: rgba(0, 0, 0, 0.6);
z-index: 1049;
opacity: 0;
visibility: hidden;
transition: opacity 0.3s ease, visibility 0.3s ease;
display: block;
}

.sidebar-overlay.active {
opacity: 1;
visibility: visible;
}

@media (max-width: 768px) {
.sidebar-overlay {
top: 0;
height: 100%;
}
}

/* AnimaÃ§Ã£o da borda do logo no footer */
@keyframes borderGrowFooter {
0% {
width: 0%;
left: 0;
}
100% {
width: 100%;
left: 0;
}
}

/* O Que Ã‰ Carta FianÃ§a */
.o-que-e-carta-fianca {
background: linear-gradient(135deg, #030d1e 0%, #091c3a 50%, #030d1e 100%);
padding: 70px 40px;
width: 100%;
}

.o-que-e-carta-fianca-container {
margin: 0 auto;
max-width: 960px;
position: relative;
}

/* Marca d'Ã¡gua nas laterais */
.o-que-e-watermark {
position: absolute;
top: 50%;
transform: translateY(-50%);
opacity: 0.08;
pointer-events: none;
z-index: 1;
}

.o-que-e-watermark-left {
left: 0;
}

.o-que-e-watermark-right {
right: 0;
}

.o-que-e-watermark img {
width: 250px;
height: auto;
display: block;
}

.o-que-e-subtitulo {
font-family: 'Inter', sans-serif;
font-size: 14px;
color: #d1d5db;
text-transform: uppercase;
letter-spacing: 1px;
font-weight: 600;
margin-bottom: 40px;
position: relative;
padding-bottom: 15px;
}

.o-que-e-subtitulo::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
height: 1px;
background: #9ca3af;
animation: borderGrow 1.5s ease-out forwards;
z-index: 1;
}

.o-que-e-titulo {
font-family: 'Inter', sans-serif;
font-size: 44px;
color: #ffffff;
line-height: 1.2;
font-weight: 600;
margin-bottom: 60px;
max-width: 70%;
}

.o-que-e-wrapper {
display: flex;
gap: 40px;
align-items: stretch;
}

.o-que-e-coluna-principal {
width: 70%;
flex-shrink: 0;
}

.o-que-e-coluna-lateral {
width: 30%;
flex-shrink: 0;
display: flex;
flex-direction: column;
}

.o-que-e-sticky-container {
position: sticky;
top: 0;
padding: 20px 0;
align-self: flex-start;
}

.o-que-e-titulo-secao {
font-family: 'Libre Baskerville', serif;
font-size: 24px;
color: #ffffff;
font-weight: 600;
margin: 0 0 20px 0;
line-height: 1.3;
}

.o-que-e-texto {
font-family: 'Inter', sans-serif;
font-size: 15px;
color: #d1d5db;
line-height: 1.8;
margin: 0 0 15px 0;
}

.o-que-e-imagem-container {
width: 100%;
margin: 30px 0;
border-radius: 12px;
overflow: hidden;
box-shadow: 0 8px 24px rgba(0, 16, 40, 0.12);
position: relative;
}

.o-que-e-imagem-container::after {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: linear-gradient(to bottom, rgba(0, 16, 40, 0.3), rgba(0, 16, 40, 0.5));
pointer-events: none;
}

.o-que-e-imagem {
width: 100%;
height: auto;
display: block;
object-fit: cover;
}

/* Sidebar Box */
.o-que-e-sidebar-box {
background: rgba(255, 255, 255, 0.05);
padding: 25px;
border-radius: 8px;
border: 1px solid rgba(255, 255, 255, 0.1);
text-align: center;
}

.o-que-e-sidebar-titulo {
font-family: 'Inter', sans-serif;
font-size: 18px;
color: #ffffff;
font-weight: 600;
margin: 0 0 15px 0;
line-height: 1.3;
}

.o-que-e-sidebar-texto {
font-family: 'Inter', sans-serif;
font-size: 14px;
color: #d1d5db;
line-height: 1.6;
margin: 0 0 20px 0;
}

/* Box de Ajuda com destaque */
.o-que-e-ajuda {
background: rgba(37, 135, 199, 0.1);
border-color: rgba(37, 135, 199, 0.3);
}

.o-que-e-ajuda .o-que-e-sidebar-titulo {
color: #C9A84C;
}

/* BotÃ£o */
.o-que-e-botao {
display: block;
width: 100%;
background: #C9A84C;
color: #ffffff;
font-family: 'Inter', sans-serif;
font-size: 15px;
font-weight: 600;
padding: 14px 32px;
border-radius: 8px;
text-decoration: none;
transition: all 0.3s ease;
box-shadow: 0 4px 15px rgba(37, 135, 199, 0.3);
text-align: center;
white-space: nowrap;
box-sizing: border-box;
}

.o-que-e-botao:hover {
background: #1a6b9f;
transform: translateY(-2px);
box-shadow: 0 6px 20px rgba(37, 135, 199, 0.4);
}

/* AnimaÃ§Ãµes para O Que Ã‰ Carta FianÃ§a */
.o-que-e-animate {
opacity: 0;
transform: translateY(40px);
transition: opacity 0.8s ease, transform 0.8s ease;
}

.o-que-e-animate.animate-active {
opacity: 1;
transform: translateY(0);
}

/* Garantir que sticky funciona bem com animaÃ§Ã£o */
.o-que-e-sticky-container.o-que-e-animate {
transition: opacity 0.8s ease, transform 0.8s ease;
}

.o-que-e-sticky-container.o-que-e-animate.animate-active {
opacity: 1;
transform: translateY(0);
}

/* Responsividade para O Que Ã‰ Carta FianÃ§a */
@media (max-width: 1024px) {
.o-que-e-carta-fianca {
padding: 50px 40px;
}

.o-que-e-wrapper {
flex-direction: column;
}

.o-que-e-coluna-principal {
width: 100%;
}

.o-que-e-coluna-lateral {
width: 100%;
}

.o-que-e-titulo-secao {
font-size: 22px;
}

.o-que-e-texto {
font-size: 14px;
}

/* Esconder marcas d'Ã¡gua em telas menores */
.o-que-e-watermark {
display: none;
}
}

@media (max-width: 768px) {
.o-que-e-carta-fianca {
padding: 60px 20px;
}

.o-que-e-wrapper {
gap: 30px;
}

.o-que-e-titulo-secao {
font-size: 20px;
}

.o-que-e-texto {
font-size: 13px;
}

.o-que-e-sticky-container {
position: static;
transform: none;
padding: 30px 0;
}

.o-que-e-sidebar-box {
padding: 20px;
}

.o-que-e-sidebar-titulo {
font-size: 16px;
}

.o-que-e-sidebar-texto {
font-size: 13px;
}

.o-que-e-botao {
font-size: 14px;
padding: 14px 28px;
}
}

/* Footer Styles */
.footer {
background: #001028;
padding: 60px 40px 30px;
width: 100%;
position: relative;
z-index: 10;
}


.footer.animate-border::before {
width: 100%;
}

.footer-logo {
display: flex;
flex-direction: column;
align-items: flex-start;
margin-bottom: 20px;
}

.footer-logo img {
height: 50px;
width: auto;
object-fit: contain;
margin-bottom: 20px;
opacity: 1;
transform: scale(1);
}

.footer-logo-border {
position: relative;
width: 100%;
height: 1px;
margin-bottom: 30px;
}

.footer-logo-border::after {
content: '';
position: absolute;
top: 0;
left: 0;
height: 1px;
background: #9ca3af;
width: 0%;
}

.footer-logo-border.animate-border::after {
animation: borderGrowFooter 1.5s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

/* Scroll reveal animation */
.reveal {
opacity: 0;
transform: translateY(40px);
transition: opacity 0.65s ease, transform 0.65s ease;
}
.reveal.visible {
opacity: 1;
transform: translateY(0);
}

/* Quem Somos Section */
.quem-somos {
background: #f5f1ed;
padding: 90px 40px;
width: 100%;
}

.quem-somos-container {
margin: 0 auto;
}

.quem-somos-title {
font-family: 'Inter', sans-serif;
font-size: 14px;
color: #718096;
margin-bottom: 40px;
text-transform: uppercase;
letter-spacing: 1px;
position: relative;
padding-bottom: 15px;
}

.quem-somos-title::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
height: 1px;
background: #9ca3af;
animation: borderGrow 1.5s ease-out forwards;
z-index: 1;
}

.quem-somos-text {
font-family: 'Libre Baskerville', serif;
font-size: 35px;
color: #2d3748;
line-height: 1.4;
margin-bottom: 80px;
font-weight: 500;
width: 70%;
}

.quem-somos-columns {
display: flex;
gap: 40px;
flex-wrap: wrap;
}

.quem-somos-column {
flex: 1;
min-width: 250px;
padding-right: 40px;
border-right: 1px solid #d0d0d0;
}

.quem-somos-column:nth-child(1) {
padding-right: 0;
display: flex;
flex-direction: column;
justify-content: flex-end;
}

.quem-somos-column:nth-child(2) {
border-right: none;
padding-right: 0;
display: flex;
flex-direction: column;
justify-content: flex-end;
}

.quem-somos-column:last-child {
flex: 1.5;
border-right: none;
padding-right: 0;
display: flex;
flex-direction: column;
justify-content: flex-end;
}

.quem-somos-number {
font-family: 'Inter', sans-serif;
font-size: 60px;
color: #718096;
font-weight: 700;
margin-bottom: 10px;
white-space: nowrap;
}

.quem-somos-subtitle {
font-family: 'Inter', sans-serif;
font-size: 16px;
color: #4a5568;
line-height: 1.6;
font-weight: 600;
}

.quem-somos-description {
font-family: 'Inter', sans-serif;
font-size: 16px;
color: #4a5568;
line-height: 1.6;
}

/* AnimaÃ§Ã£o de entrada para elementos do Quem Somos */
@keyframes slideUpFade {
from {
opacity: 0;
transform: translateY(50px);
}
to {
opacity: 1;
transform: translateY(0);
}
}

.quem-somos-animate {
opacity: 0;
transform: translateY(50px);
}

.quem-somos-animate.animate-active {
animation: slideUpFade 0.8s ease-out forwards;
}

/* AnimaÃ§Ã£o de entrada para elementos da Nossa GovernanÃ§a - mesma do Quem Somos */
.nossa-governanca-animate {
opacity: 0;
transform: translateY(50px);
}

.nossa-governanca-animate.animate-active {
animation: slideUpFade 0.8s ease-out forwards;
}

/* Delay para cada elemento da GovernanÃ§a */
.nossa-governanca-text.animate-active {
animation-delay: 0.1s;
}

.governanca-item:nth-child(1).animate-active {
animation-delay: 0.3s;
}

.governanca-item:nth-child(2).animate-active {
animation-delay: 0.5s;
}

.governanca-item:nth-child(3).animate-active {
animation-delay: 0.7s;
}

.governanca-item:nth-child(4).animate-active {
animation-delay: 0.9s;
}

.governanca-image-wrapper.animate-active {
animation-delay: 1.1s;
}

/* Delay para cada elemento */
animation-delay: 0.1s;
}

/* AnimaÃ§Ã£o de entrada para elementos da seÃ§Ã£o Como Funciona */
.como-funciona-animate {
opacity: 0;
transform: translateY(50px);
transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.como-funciona-animate.animate-active {
opacity: 1;
transform: translateY(0);
}

.quem-somos-column:nth-child(1) .quem-somos-subtitle.animate-active {
animation-delay: 0.3s;
}

.quem-somos-column:nth-child(2) .quem-somos-number.animate-active {
animation-delay: 0.5s;
}

.quem-somos-column:nth-child(2) .quem-somos-subtitle.animate-active {
animation-delay: 0.7s;
}

.quem-somos-column:nth-child(3) .quem-somos-description.animate-active {
animation-delay: 0.9s;
}

.quem-somos-text.animate-active {
animation-delay: 0.1s;
}

/* Nossos Diferenciais Section */
.nossos-diferenciais {
background: linear-gradient(135deg, #030d1e 0%, #091c3a 50%, #030d1e 100%);
padding: 80px 0;
width: 100%;
display: flex;
flex-direction: column;
box-sizing: border-box;
}

.nossos-diferenciais-container {
margin: 0 auto;
width: 90%;
max-width: 1400px;
display: flex;
flex-direction: column;
}
.nossos-diferenciais-title-wrapper {
display: flex;
flex-direction: column;
align-items: center;
margin-bottom: 40px;
gap: 12px;
}

.nossos-diferenciais-title-row {
display: flex;
align-items: center;
justify-content: center;
gap: 30px;
width: 100%;
}

.nossos-diferenciais-title-line {
flex: 1;
height: 1px;
background: transparent;
position: relative;
overflow: hidden;
}

.nossos-diferenciais-title-line::before {
content: '';
position: absolute;
top: 0;
height: 100%;
width: 0%;
background: #9ca3af;
}

.nossos-diferenciais-title-line.animate-grow:first-child::before {
animation: growFromTitleLeft 1.5s ease-out forwards;
}

.nossos-diferenciais-title-line.animate-grow:last-child::before {
animation: growFromTitleRight 1.5s ease-out forwards;
}

@keyframes growFromTitleLeft {
0% {
width: 0%;
right: 0;
}
100% {
width: 100%;
right: 0;
}
}

@keyframes growFromTitleRight {
0% {
width: 0%;
left: 0;
}
100% {
width: 100%;
left: 0;
}
}

.nossos-diferenciais-title {
font-family: 'Libre Baskerville', serif;
font-size: 30px;
color: #ffffff;
text-transform: uppercase;
letter-spacing: 1px;
white-space: nowrap;
}

.valor-grid {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 20px;
align-items: stretch;
}

.valor-column-left,
.valor-column-right {
display: flex;
flex-direction: column;
gap: 20px;
}

.valor-card {
background: linear-gradient(
    135deg,
    #071e38 0%,
    #051528 15%,
    #030e1e 35%,
    #020a17 60%,
    #000d1d 100%
);
border: 1px solid rgba(201, 168, 76, 0.35);
padding: 24px;
border-radius: 12px;
transition: transform 0.3s ease, background 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
display: flex;
flex-direction: column;
height: 100%;
gap: 16px;
}

.valor-card:hover {
transform: translateY(-5px);
background: linear-gradient(
    135deg,
    #0a2645 0%,
    #071b33 15%,
    #041226 35%,
    #020d1f 60%,
    #011020 100%
);
border-color: rgba(201, 168, 76, 0.70);
box-shadow: 0 8px 28px rgba(201, 168, 76, 0.12);
}

.valor-card-header {
display: flex;
align-items: flex-start;
gap: 14px;
}

.valor-icon {
width: 46px;
height: 46px;
background: rgba(201, 168, 76, 0.10);
border: 2px solid #C9A84C;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}

.valor-icon svg {
width: 20px;
height: 20px;
fill: none;
stroke: #C9A84C;
stroke-width: 2;
}

.valor-card-title {
font-family: 'Libre Baskerville', serif;
font-size: 16px;
color: #ffffff;
font-weight: 700;
margin: 0;
position: relative;
padding-bottom: 10px;
line-height: 1.3;
text-transform: uppercase;
letter-spacing: 0.5px;
}

.valor-card-title::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
width: 2.2em;
height: 2px;
background: #C9A84C;
border-radius: 1px;
}

.valor-card-text {
font-family: 'Inter', sans-serif;
font-size: 14px;
color: #d1d5db;
line-height: 1.65;
margin: 0;
}

.valor-center-image {
width: 100%;
min-height: 500px;
border: 1px solid #C9A84C;
border-radius: 12px;
overflow: hidden;
align-self: stretch;
background: #000d1d;
display: flex;
flex-direction: column;
position: relative;
}

.valor-center-image picture {
display: contents;
}

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

.valor-center-content {
position: relative;
z-index: 1;
padding: 0 20px 22px;
display: flex;
flex-direction: column;
gap: 10px;
flex: 1;
align-items: center;
text-align: center;
}

.valor-center-content::before {
content: '';
flex: 1;
min-height: 50%;
}

.valor-center-title {
font-family: 'Libre Baskerville', serif;
font-size: 17px;
font-weight: 700;
color: #C9A84C;
text-transform: uppercase;
letter-spacing: 1.5px;
margin: 0;
text-align: center;
white-space: nowrap;
}

.valor-center-subtitle {
font-family: 'Inter', sans-serif;
font-size: 15px;
color: #ffffff;
margin: 0;
line-height: 1.4;
font-weight: 400;
text-align: center;
}

.valor-center-divider {
width: 100%;
height: 1px;
background: linear-gradient(to right, transparent, #C9A84C 25%, #C9A84C 75%, transparent);
margin: 2px 0;
}

.valor-center-cols {
display: flex;
align-items: stretch;
}

.valor-center-col {
flex: 1;
display: flex;
flex-direction: column;
align-items: center;
gap: 7px;
padding: 0 4px;
}

.valor-center-col svg {
width: 22px;
height: 22px;
stroke: #C9A84C;
fill: none;
flex-shrink: 0;
}

.valor-center-col img {
width: 46px;
height: 46px;
object-fit: contain;
flex-shrink: 0;
}

.valor-center-col-label {
font-family: 'Inter', sans-serif;
font-size: 10px;
color: rgba(255,255,255,0.75);
text-align: center;
line-height: 1.3;
font-weight: 500;
letter-spacing: 0.3px;
}

.valor-center-col-sep {
width: 1px;
height: 65px;
background: #C9A84C;
align-self: center;
flex-shrink: 0;
}

/* AnimaÃ§Ã£o de entrada para elementos dos Diferenciais - mesma do Quem Somos */
.diferenciais-animate {
opacity: 0;
transform: translateY(50px);
}

.diferenciais-animate.animate-active {
animation: slideUpFade 0.8s ease-out forwards;
}

/* Delay para cada card - esquerda */
.valor-column-left .valor-card:nth-child(1).animate-active {
animation-delay: 0.1s;
}

.valor-column-left .valor-card:nth-child(2).animate-active {
animation-delay: 0.3s;
}

/* Delay para cada card - direita */
.valor-column-right .valor-card:nth-child(1).animate-active {
animation-delay: 0.5s;
}

.valor-column-right .valor-card:nth-child(2).animate-active {
animation-delay: 0.7s;
}

/* Delay para imagem central */
.valor-center-image.diferenciais-animate.animate-active {
animation-delay: 0.9s;
}

@media (max-width: 1024px) {
.valor-grid {
grid-template-columns: 1fr;
gap: 30px;
}

.valor-column-left,
.valor-column-right {
gap: 20px;
}

.valor-center-image {
height: auto;
min-height: 0;
aspect-ratio: 6 / 3;
}
}

@media (max-width: 768px) {
.nossos-diferenciais-title {
font-size: 25px !important;
letter-spacing: 0.5px !important;
}
}

.footer-contact {
margin-bottom: 30px;
}

.footer-contact-item {
display: flex;
align-items: flex-start;
margin-bottom: 15px;
gap: 12px;
}

.footer-contact-item:last-child {
margin-bottom: 0;
}

.footer-contact-icon {
width: 20px;
height: 20px;
flex-shrink: 0;
margin-top: 2px;
}

.footer-contact-icon svg {
width: 100%;
height: 100%;
fill: #C9A84C;
}

.footer-contact-text {
color: #9ca3af;
font-family: 'Inter', sans-serif;
font-size: 14px;
font-weight: 400;
line-height: 1.5;
}

.footer-contact-text a {
color: #9ca3af;
text-decoration: none;
transition: color 0.3s ease;
}

.footer-contact-text a:hover {
color: #C9A84C;
}

.footer-content {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
gap: 40px;
max-width: 1200px;
margin: 0 auto;
}

.footer-section {
display: flex;
flex-direction: column;
}

.footer-section h3 {
color: #ffffff;
font-family: 'Inter', sans-serif;
font-weight: 600;
font-size: 16px;
margin-bottom: 20px;
letter-spacing: 0.5px;
}

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

.footer-section ul li {
margin-bottom: 12px;
}

.footer-section ul a {
color: #9ca3af;
text-decoration: none;
font-family: 'Inter', sans-serif;
font-size: 14px;
font-weight: 400;
transition: color 0.3s ease;
}

.footer-section ul a:hover {
color: #C9A84C;
}

.footer-bottom {
margin-top: 50px;
padding-top: 30px;
display: flex;
justify-content: space-between;
align-items: center;
max-width: 1200px;
margin-left: auto;
margin-right: auto;
width: 100%;
position: relative;
}

.footer-bottom::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 0.5px;
background: rgba(156, 163, 175, 0.2);
}

.footer-copyright {
color: #9ca3af;
font-family: 'Inter', sans-serif;
font-size: 14px;
font-weight: 400;
}

.footer-social {
display: flex;
gap: 5px;
position: relative;
z-index: 1002;
}

.footer-social a {
width: 40px;
height: 40px;
border-radius: 8px;
display: flex;
align-items: center;
justify-content: center;
transition: all 0.3s ease;
position: relative;
z-index: 1002;
}

.footer-social a:hover {
border-color: #C9A84C;
background: rgba(37, 135, 199, 0.1);
}

.footer-social a svg {
width: 20px;
height: 20px;
fill: #9ca3af;
transition: fill 0.3s ease;
}

.footer-social a:hover svg {
fill: #C9A84C;
}

/* Responsive Design */
@media (max-width: 1300px) {
.header {
padding: 15px 30px;
justify-content: space-between;
}

.header .nav,
.header-right .btn-language,
.header-right .auth-buttons {
display: none;
}

.hamburger {
display: flex;
}

.header-right {
display: flex;
align-items: center;
gap: 15px;
}

.sidebar {
display: block;
}
}

@media (max-width: 768px) {
.header {
padding: 2.8rem 20px 12px 20px;
background: rgba(0, 16, 40, 0.98);
backdrop-filter: blur(10px);
}

/* Sidebar mobile - opens over header */
.sidebar {
width: 100%;
height: 100vh;
top: 0;
left: 0;
right: auto;
display: block;
transform: translateY(-100%);
border-radius: 0;
overflow-y: auto;
opacity: 0;
visibility: hidden;
transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1), visibility 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.sidebar.active {
display: block;
transform: translateY(0);
opacity: 1;
visibility: visible;
}

.sidebar-content {
padding: 30px 20px;
height: auto;
overflow-y: visible;
}

.sidebar-language {
padding: 12px 16px;
gap: 12px;
}

.sidebar-lang-flag {
width: 40px;
height: 40px;
}

.sidebar-link {
font-size: 15px;
padding: 12px 15px;
}

.logo img {
height: 35px;
}

.hero {
flex-direction: column !important;
justify-content: center !important;
align-items: center !important;
padding-top: 3.5rem !important;
height: auto !important;
min-height: 100vh !important;
}

.hero-content {
padding: 0 20px !important;
text-align: center !important;
display: flex !important;
flex-direction: column !important;
align-items: center !important;
justify-content: center !important;
}

.hero-title {
font-size: 32px;
margin-bottom: 0 !important;
}

.hero-subtitle {
font-size: 14px;
letter-spacing: 2px;
}

.hero-buttons {
justify-content: center;
}

.hero-social {
position: relative !important;
right: auto !important;
bottom: auto !important;
top: auto !important;
transform: none !important;
flex-direction: row !important;
justify-content: center !important;
align-items: center !important;
gap: 12px !important;
order: 2 !important;
margin-top: 30px !important;
}

.hero-content {
order: 1 !important;
}

.hero-social-link {
width: 42px;
height: 42px;
}

.hero-social-link svg {
width: 20px;
height: 20px;
}

.quem-somos {
padding: 70px 20px;
}

.quem-somos-text {
font-size: 20px;
}

.quem-somos-columns {
flex-direction: column;
gap: 30px;
}

.quem-somos-column {
padding-right: 0;
border-right: none;
}

.quem-somos-number {
font-size: 36px;
}
}

@media (max-width: 480px) {
.hero-title {
font-size: 28px;
}

.btn-primary,
.btn-secondary {
padding: 14px 28px;
font-size: 14px;
}
}

/* â”€â”€ Hero Bottom Strip â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.hero-bottom-strip {
position: absolute;
bottom: 0;
left: 50%;
transform: translateX(-50%);
display: inline-flex;
align-items: center;
gap: 0;
width: 90%;
border-top: 1px solid rgba(255,255,255,0.12);
border-radius: 20px 20px 0 0;
background: rgba(255,255,255,0.04);
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
white-space: nowrap;
z-index: 2;
max-width: 1300px;
}

.hero-strip-item {
display: flex;
align-items: center;
gap: 12px;
padding: 16px 24px;
}

.hero-strip-icon {
width: 34px;
height: 34px;
border-radius: 50%;
background: rgba(244,195,90,0.12);
border: 1px solid rgba(244,195,90,0.22);
display: flex;
align-items: center;
justify-content: center;
color: #F4C35A;
flex-shrink: 0;
}

.hero-strip-text {
display: flex;
flex-direction: column;
gap: 2px;
}

.hero-strip-label {
font-family: 'Inter', sans-serif;
font-size: 13px;
font-weight: 600;
color: rgba(255,255,255,0.92);
line-height: 1.2;
}

.hero-strip-sub {
font-family: 'Inter', sans-serif;
font-size: 11px;
color: rgba(255,255,255,0.45);
line-height: 1.2;
}

.hero-strip-sep {
width: 1px;
height: 36px;
background: rgba(255,255,255,0.1);
flex-shrink: 0;
}

@media (max-width: 1024px) {
.hero-strip-item {
padding: 14px 20px;
gap: 10px;
}
.hero-strip-label {
font-size: 12px;
}
.hero-strip-sub {
display: none;
}
}

@media (max-width: 768px) {
.hero-bottom-strip {
display: none;
}
}

/* Nossos Produtos Section */
.nossos-produtos {
padding: 60px 0 100px;
background: #F8F5F0;
}

.nossos-produtos-container {
max-width: 1400px;
margin: 0 auto;
padding: 0 40px;
}

.nossos-produtos-header {
margin-bottom: 60px;
}

.nossos-produtos-subheading {
font-family: 'Inter', sans-serif;
font-size: 14px;
color: #718096;
text-transform: uppercase;
letter-spacing: 1px;
margin-bottom: 40px;
position: relative;
padding-bottom: 15px;
opacity: 0;
transform: translateY(30px);
}

.nossos-produtos-subheading::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
height: 1px;
background: #9ca3af;
animation: borderGrow 1.5s ease-out forwards;
z-index: 1;
}

.nossos-produtos-subheading.animate-active {
animation: slideUpFade 0.8s ease-out forwards;
}

.nossos-produtos-title-row {
display: flex;
align-items: center;
justify-content: flex-start;
gap: 40px;
}

.nossos-produtos-title {
font-family: 'Libre Baskerville', serif;
font-size: 35px;
color: #2d3748;
font-weight: 500;
line-height: 1.4;
opacity: 0;
transform: translateY(30px);
flex: 1;
}

.nossos-produtos-title.animate-active {
animation: slideUpFade 0.8s ease-out 0.2s forwards;
}

.nossos-produtos-subtitulo {
font-family: 'Inter', sans-serif;
font-size: 16px;
color: #6b7280;
line-height: 1.6;
margin-top: -32px;
padding-left: 18px;
border-left: 3px solid #F4C35A;
max-width: 620px;
}

.nossos-subtitulo-destaque {
color: #2d3748;
font-weight: 600;
}

.carousel-arrows-inline {
display: flex;
justify-content: flex-end;
gap: 12px;
margin-bottom: 16px;
opacity: 0;
transform: scale(0.8);
}

.carousel-arrows-inline.animate-active {
animation: fadeInScale 0.6s ease-out forwards;
}

.carousel-wrapper {
position: relative;
}

.carousel-container {
flex: 1;
overflow: hidden;
position: relative;
}

.carousel-track {
display: flex;
gap: 24px;
transition: transform 0.5s ease-in-out;
}

.carousel-card {
flex: 0 0 calc(25% - 18px);
min-width: 280px;
height: 400px;
position: relative;
border-radius: 12px;
overflow: hidden;
cursor: pointer;
opacity: 0;
transform: translateY(50px);
text-decoration: none;
display: block;
}

.carousel-card.animate-active {
animation: slideUpFade 0.8s ease-out forwards;
}

.carousel-card-bg {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-size: cover;
background-position: center;
background-color: #001028;
transition: transform 0.5s ease;
}

.carousel-card:hover .carousel-card-bg {
transform: scale(1.1);
}

.carousel-card-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(to bottom, rgba(0, 16, 40, 0.3), rgba(0, 16, 40, 0.8));
display: flex;
flex-direction: column;
justify-content: flex-end;
padding: 30px;
transition: background 0.3s ease;
}

.carousel-card:hover .carousel-card-overlay {
background: linear-gradient(to bottom, rgba(0, 16, 40, 0.5), rgba(0, 16, 40, 0.9));
}

.carousel-card-category {
font-family: 'Inter', sans-serif;
font-size: 12px;
color: #C9A84C;
text-transform: uppercase;
letter-spacing: 1px;
margin-bottom: 10px;
font-weight: 600;
}

.carousel-card-title {
font-family: 'Inter', sans-serif;
font-size: 24px;
color: #ffffff;
font-weight: 700;
margin-bottom: 10px;
line-height: 1.3;
}

.carousel-card-description {
font-family: 'Inter', sans-serif;
font-size: 14px;
color: #e2e8f0;
line-height: 1.6;
opacity: 0.9;
}

.carousel-card-btn {
display: inline-flex;
align-items: center;
gap: 6px;
margin-top: 16px;
padding: 8px 18px;
border: 1px solid rgba(244,195,90,0.55);
border-radius: 100px;
background: transparent;
color: #F4C35A;
font-family: 'Inter', sans-serif;
font-size: 13px;
font-weight: 500;
text-decoration: none;
cursor: pointer;
transition: background 0.2s, border-color 0.2s, color 0.2s, transform 0.2s;
transform: translateY(4px);
opacity: 0.85;
align-self: flex-start;
}

.carousel-card:hover .carousel-card-btn {
background: rgba(244,195,90,0.14);
border-color: #F4C35A;
color: #F4C35A;
transform: translateY(0);
opacity: 1;
}

.text-gold-highlight {
color: #F4C35A;
}

.carousel-arrow {
width: 40px;
height: 40px;
border-radius: 50%;
background: #ffffff;
border: 2px solid #e2e8f0;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
transition: all 0.3s ease;
flex-shrink: 0;
z-index: 10;
}

.carousel-arrow.animate-active {
animation: fadeInScale 0.6s ease-out forwards;
}

.carousel-arrow:hover {
background: #C9A84C;
border-color: #C9A84C;
transform: scale(1.05);
}

.carousel-arrow:hover svg {
stroke: #ffffff;
}

.carousel-arrow:active {
transform: scale(0.95);
}

.carousel-arrow svg {
width: 18px;
height: 18px;
stroke: #9ca3af;
transition: stroke 0.3s ease;
}

@keyframes fadeInScale {
from {
opacity: 0;
transform: scale(0.8);
}
to {
opacity: 1;
transform: scale(1);
}
}

@media (max-width: 1200px) {
.carousel-card {
flex: 0 0 calc(33.333% - 16px);
}
}

@media (max-width: 768px) {
.nossos-produtos {
padding: 60px 0;
}

.nossos-produtos-container {
padding: 0 20px;
}

.nossos-produtos-title {
font-size: 32px;
width: 100%;
}

.nossos-produtos-subtitulo {
font-size: 14px;
margin-top: -12px;
max-width: 100%;
}

.carousel-arrows-inline {
margin-bottom: 12px;
}

.carousel-wrapper {
gap: 15px;
}

.carousel-card {
flex: 0 0 calc(50% - 12px);
min-width: 250px;
height: 350px;
}

.carousel-arrow {
width: 50px;
height: 50px;
}

.carousel-arrow svg {
width: 20px;
height: 20px;
}
}

@media (max-width: 480px) {
.nossos-produtos-title {
font-size: 24px;
}

.carousel-card {
flex: 0 0 calc(100% - 0px);
min-width: 100%;
}

.carousel-arrow {
width: 45px;
height: 45px;
}

.carousel-arrow svg {
width: 18px;
height: 18px;
}

.carousel-card-title {
font-size: 20px;
}

.carousel-card-description {
font-size: 13px;
}
}

/* Nossa EssÃªncia */
.nossa-essencia {
background: url('/assets/imagens/bg_essencial_fundo.png') center center / cover no-repeat;
padding: 0;
width: 100%;
height: 600px;
display: flex;
align-items: stretch;
position: relative;
overflow: hidden;
}

.essencia-layout {
display: flex;
align-items: stretch;
width: 100%;
}

.essencia-lado-esquerdo {
flex: 1;
display: flex;
align-items: center;
justify-content: center;
padding: 30px 20px 30px 40px;
}

.essencia-img-esq {
width: 100%;
max-height: 100%;
object-fit: contain;
object-position: center;
display: block;
border-radius: 10px;
}

.essencia-img-mobile {
display: none;
}

.essencia-lado-direito {
flex: 1;
display: flex;
flex-direction: column;
justify-content: center;
padding: 40px 60px 40px 0;
gap: 18px;
}

.essencia-gold {
color: #C9A84C;
}

.essencia-titulo-novo {
font-family: 'Libre Baskerville', serif;
font-size: 50px;
font-weight: 700;
color: #ffffff;
margin: 0;
}

.essencia-subtitulo-novo {
font-family: 'Inter', sans-serif;
font-size: 15px;
color: #DDE5E6;
line-height: 1.75;
margin: 0;
}

/* Wrapper que alinha texto, card e botÃ£o Ã  largura do texto */
.essencia-right-block {
display: flex;
flex-direction: column;
gap: 18px;
width: fit-content;
max-width: 100%;
}

/* Card de benefÃ­cios */
.essencia-beneficios-card {
position: relative;
border: 1px solid #C9A84C;
border-radius: 10px;
overflow: hidden;
}

.essencia-beneficios-grid {
display: grid;
grid-template-columns: 1fr 1fr;
grid-template-rows: auto auto;
}

.essencia-ben-item {
display: flex;
flex-direction: row;
align-items: center;
text-align: left;
gap: 14px;
padding: 20px 20px;
}

.essencia-ben-icon {
color: #C9A84C;
flex-shrink: 0;
}

.essencia-ben-texto {
display: flex;
flex-direction: column;
gap: 3px;
}

.essencia-ben-titulo {
font-family: 'Inter', sans-serif;
font-size: 13px;
font-weight: 700;
color: #ffffff;
text-transform: uppercase;
letter-spacing: 0.5px;
}

.essencia-ben-sub {
font-family: 'Inter', sans-serif;
font-size: 12px;
color: #DDE5E6;
}

/* DivisÃ³rias com degradÃª */
.essencia-div-v {
position: absolute;
top: 10%;
left: 50%;
transform: translateX(-50%);
width: 1px;
height: 80%;
background: linear-gradient(to bottom, transparent, #C9A84C 25%, #C9A84C 75%, transparent);
pointer-events: none;
}

.essencia-div-h {
position: absolute;
left: 2%;
top: 50%;
transform: translateY(-50%);
height: 1px;
width: 96%;
background: linear-gradient(to right, transparent, #C9A84C 15%, #C9A84C 85%, transparent);
pointer-events: none;
}

/* BotÃ£o WhatsApp */
.essencia-btn-wa {
display: inline-flex;
align-self: flex-start;
align-items: center;
gap: 16px;
background: #C9A84C;
border: 1.5px solid #C9A84C;
border-radius: 10px;
padding: 14px 22px;
text-decoration: none;
transition: background 0.2s ease;
}

.essencia-btn-wa:hover {
background: #b8963e;
text-decoration: none;
}

.essencia-btn-circulo {
width: 46px;
height: 46px;
border-radius: 50%;
background: #001028;
border: none;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}

.essencia-btn-seta {
flex-shrink: 0;
color: #001028;
animation: seta-slide 1.2s ease-in-out infinite;
}

@keyframes seta-slide {
0%, 100% { transform: translateX(0); }
50% { transform: translateX(6px); }
}

.essencia-btn-textos {
display: flex;
flex-direction: column;
gap: 4px;
}

.essencia-btn-textos strong {
font-family: 'Inter', sans-serif;
font-size: 15px;
font-weight: 700;
color: #001028;
line-height: 1.2;
}

.essencia-btn-textos span {
font-family: 'Inter', sans-serif;
font-size: 12px;
color: #001028;
display: flex;
align-items: center;
gap: 5px;
}

.essencia-btn-textos span svg {
stroke: #001028;
flex-shrink: 0;
}

@media (max-width: 1024px) {
.essencia-lado-esquerdo {
width: 35%;
}
.essencia-lado-direito {
padding: 50px 40px 50px 0;
}
.essencia-titulo-novo {
font-size: 40px;
}
}

@media (max-width: 768px) {
.essencia-layout {
flex-direction: column;
}
.essencia-lado-esquerdo {
width: 100%;
height: 240px;
}
.essencia-lado-direito {
padding: 40px 24px 40px 0;
}
.essencia-titulo-novo {
font-size: 26px;
}
.essencia-right-block {
width: 100%;
}
}

.nossa-essencia::before,
.nossa-essencia::after {
display: none;
}

.nossa-essencia-container {
margin: 0 auto;
width: 90%;
max-width: 1600px;
position: relative;
z-index: 5;
}

.nossa-essencia-wrapper {
display: flex;
align-items: flex-start;
gap: 60px;
position: relative;
z-index: 20;
background: transparent;
}

/* Coluna Esquerda */
.essencia-coluna-esquerda {
width: 50%;
display: flex;
flex-direction: column;
background: transparent;
position: relative;
z-index: 25;
}

.essencia-header {
display: flex;
align-items: center;
gap: 20px;
margin-bottom: 40px;
}

.essencia-linha {
width: 40px;
height: 1px;
background: #DDE5E6;
}

.essencia-subtitulo {
font-family: 'Inter', sans-serif;
font-size: 14px;
color: #DDE5E6;
text-transform: uppercase;
letter-spacing: 1px;
font-weight: 500;
}

.essencia-titulo-principal {
font-family: 'Inter', sans-serif;
font-size: 48px;
color: #ffffff;
line-height: 1.2;
font-weight: 600;
margin: 0;
text-align: left;
}

/* Coluna Direita */
.essencia-coluna-direita {
width: 50%;
display: flex;
flex-direction: column;
gap: 40px;
background: transparent;
position: relative;
z-index: 25;
}

.essencia-overlay-esquerda {
display: block;
width: auto;
max-width: 50%;
height: 100%;
max-height: 100%;
object-fit: contain;
object-position: left center;
position: absolute;
top: 0;
left: 0;
}

.essencia-foto-contrato {
width: 100%;
height: 480px;
object-fit: cover;
object-position: center top;
border-radius: 12px;
display: block;
}

.essencia-analise-titulo {
font-family: 'Inter', sans-serif;
font-size: 42px;
font-weight: 700;
color: #ffffff;
line-height: 1.25;
margin: 0 0 20px 0;
}

.essencia-analise-titulo span {
color: #C9A84C;
}

.essencia-analise-desc {
font-family: 'Inter', sans-serif;
font-size: 16px;
color: #DDE5E6;
line-height: 1.7;
margin: 0 0 32px 0;
}

.essencia-destaque {
color: #C9A84C;
font-weight: 600;
}

.essencia-analise-btns {
display: flex;
flex-direction: column;
gap: 14px;
}

.essencia-btn-primario {
display: inline-flex;
align-items: center;
gap: 14px;
background: #C9A84C;
color: #ffffff;
font-family: 'Inter', sans-serif;
padding: 16px 24px;
border-radius: 10px;
text-decoration: none;
transition: background 0.2s ease;
}

.essencia-btn-primario:hover {
background: #1a6fa8;
color: #ffffff;
text-decoration: none;
}

.essencia-btn-primario svg {
flex-shrink: 0;
}

.essencia-btn-texto {
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 2px;
}

.essencia-btn-texto strong {
font-size: 15px;
font-weight: 700;
line-height: 1.2;
}

.essencia-btn-texto small {
font-size: 12px;
font-weight: 400;
opacity: 0.85;
}

.essencia-block {
display: flex;
flex-direction: column;
gap: 15px;
position: relative;
z-index: 15;
background: transparent;
}

.essencia-topo {
display: flex;
justify-content: space-between;
align-items: flex-start;
gap: 30px;
}

.essencia-titulo {
font-family: 'Inter', sans-serif;
font-size: 18px;
color: #ffffff;
font-weight: 600;
line-height: 1.4;
margin: 0;
flex: 1;
}

.essencia-ano {
font-family: 'Inter', sans-serif;
font-size: 16px;
color: #DDE5E6;
font-weight: 500;
white-space: nowrap;
}

.essencia-descricao {
font-family: 'Inter', sans-serif;
font-size: 14px;
color: rgba(221, 229, 230, 0.7);
line-height: 1.6;
margin: 0;
}

.essencia-divisor {
width: 100%;
height: 1px;
background: rgba(221, 229, 230, 0.2);
}

.essencia-lista {
list-style: none;
padding: 0;
margin: 15px 0 0 0;
}

.essencia-lista li {
font-family: 'Inter', sans-serif;
font-size: 14px;
color: rgba(221, 229, 230, 0.8);
line-height: 1.8;
padding: 8px 0;
padding-left: 20px;
position: relative;
}

.essencia-lista li::before {
content: 'â€¢';
position: absolute;
left: 0;
color: #C9A84C;
font-size: 18px;
}

/* AcordeÃ£o */
.essencia-acordeao:not(.active) .essencia-conteudo {
max-height: 0;
}

.essencia-topo {
display: flex;
justify-content: space-between;
align-items: center;
cursor: pointer;
}

.essencia-toggle {
font-size: 28px;
color: #C9A84C;
font-weight: 300;
transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
flex-shrink: 0;
}

.essencia-acordeao.active .essencia-toggle {
transform: rotate(45deg);
}

.essencia-conteudo {
max-height: 0;
overflow: hidden;
transition: max-height 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.essencia-acordeao.active .essencia-conteudo {
max-height: 500px;
}

.essencia-preview {
margin-bottom: 15px;
}

.essencia-detalhes {
max-height: 0;
overflow: hidden;
opacity: 0;
transform: translateY(-10px);
transition: max-height 0.6s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1), transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.essencia-acordeao.active .essencia-detalhes {
max-height: 500px;
opacity: 1;
transform: translateY(0);
margin-top: 15px;
}

/* AnimaÃ§Ãµes para Nossa EssÃªncia */
.nossa-essencia-animate {
opacity: 0;
transform: translateY(40px);
transition: opacity 0.8s ease, transform 0.8s ease;
}

.nossa-essencia-animate.animate-active {
opacity: 1;
transform: translateY(0);
}

/* Responsividade para Nossa EssÃªncia */
@media (max-width: 1024px) {
.nossa-essencia {
padding: 60px 40px;
min-height: auto;
}

.nossa-essencia-container {
width: 85%;
}

.nossa-essencia-wrapper {
flex-direction: column;
gap: 50px;
}

.essencia-coluna-esquerda {
width: 100%;
}

.essencia-coluna-direita {
width: 100%;
}

.essencia-titulo-principal {
font-size: 36px;
}

.essencia-ano {
font-size: 14px;
}

.essencia-descricao {
font-size: 13px;
}
}

@media (max-width: 768px) {
.nossa-essencia {
padding: 0;
min-height: 300px;
}

.nossa-essencia-container {
width: 100%;
}

.essencia-header {
margin-bottom: 30px;
}

.essencia-titulo-principal {
font-size: 28px;
}

.essencia-topo {
flex-direction: column;
gap: 10px;
}

.essencia-titulo {
font-size: 15px;
}

.essencia-descricao {
font-size: 12px;
}

.essencia-lista li {
font-size: 12px;
padding: 6px 0;
padding-left: 18px;
}

.essencia-coluna-direita {
gap: 30px;
}
}

/* Nossa GovernanÃ§a */
.nossa-governanca {
background: #f5f1ed;
padding: 90px 40px;
width: 100%;
}

.nossa-governanca-container {
margin: 0 auto;
max-width: 1400px;
}

.nossa-governanca-title {
font-family: 'Inter', sans-serif;
font-size: 14px;
color: #718096;
margin-bottom: 40px;
text-transform: uppercase;
letter-spacing: 1px;
position: relative;
padding-bottom: 15px;
}

.nossa-governanca-title::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
height: 1px;
background: #9ca3af;
animation: borderGrow 1.5s ease-out forwards;
z-index: 1;
}

.nossa-governanca-text {
font-family: 'Libre Baskerville', serif;
font-size: 35px;
color: #2d3748;
line-height: 1.4;
margin-bottom: 80px;
font-weight: 500;
width: 70%;
}

.governanca-layout {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 60px;
align-items: start;
}

.governanca-left {
display: flex;
flex-direction: column;
gap: 20px;
}

.governanca-item {
background: transparent;
border-bottom: 1px solid rgba(156, 163, 175, 0.2);
transition: all 0.4s ease;
cursor: pointer;
}

.governanca-item:last-child {
border-bottom: none;
}

.governanca-item.active {
background: rgba(201, 168, 76, 0.08);
}

.governanca-item-header {
display: flex;
align-items: center;
padding: 25px 30px;
gap: 20px;
}

.governanca-item-number {
font-family: 'Inter', sans-serif;
font-size: 28px;
font-weight: 700;
color: #C9A84C;
min-width: 50px;
}

.governanca-item-title {
font-family: 'Inter', sans-serif;
font-size: 16px;
color: #2d3748;
font-weight: 600;
flex: 1;
margin: 0;
}

.governanca-item-icon {
font-size: 28px;
color: #C9A84C;
font-weight: 300;
transition: transform 0.3s ease;
min-width: 30px;
text-align: center;
}

.governanca-item.active .governanca-item-icon {
transform: rotate(45deg);
}

.governanca-item-content {
max-height: 0;
overflow: hidden;
transition: max-height 0.4s ease, padding 0.4s ease;
}

.governanca-item.active .governanca-item-content {
max-height: 500px;
padding: 20px 30px 25px 30px;
}

.governanca-item-content p {
font-family: 'Inter', sans-serif;
font-size: 14px;
color: #718096;
line-height: 1.7;
margin: 0;
}

.governanca-right {
position: sticky;
top: 40px;
}

.governanca-image-wrapper {
width: 100%;
border-radius: 12px;
overflow: hidden;
box-shadow: 0 8px 24px rgba(0, 16, 40, 0.12);
background: #ffffff;
}

.governanca-image {
width: 100%;
height: 500px;
object-fit: cover;
display: block;
transition: opacity 0.4s ease;
}

.governanca-image.fade-out {
opacity: 0;
}

@media (max-width: 1024px) {
.governanca-layout {
grid-template-columns: 1fr;
gap: 40px;
}

.governanca-right {
position: static;
order: -1;
}

.governanca-image {
height: 350px;
}
}

@media (max-width: 768px) {
.nossa-governanca {
padding: 60px 20px;
}

.nossa-governanca-text {
width: 100%;
font-size: 24px;
margin-bottom: 50px;
}

.governanca-item-header {
padding: 20px;
gap: 15px;
}

.governanca-item-number {
font-size: 22px;
min-width: 40px;
}

.governanca-item-title {
font-size: 16px;
}

.governanca-item-icon {
font-size: 24px;
min-width: 25px;
}

.governanca-item.active .governanca-item-content {
padding: 20px 20px 20px 20px;
}

.governanca-item-content p {
font-size: 14px;
}

.governanca-image {
height: 250px;
}
}

/* Back to Top Button */
/* WhatsApp Button */
.whatsapp-button {
position: fixed;
bottom: 110px;
right: 40px;
width: 60px;
height: 60px;
border-radius: 50%;
background: #25D366;
border: none;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
text-decoration: none;
z-index: 1000;
box-shadow: 0 4px 12px rgba(37, 211, 102, 0.4);
will-change: box-shadow;
animation: pulse 2s ease-out infinite;
transition: transform 0.3s ease, box-shadow 0.3s ease, opacity 0.15s ease, visibility 0.15s ease;
opacity: 0;
visibility: hidden;
}

.whatsapp-button.visible {
opacity: 1;
visibility: visible;
}

.whatsapp-button:hover {
transform: scale(1.1);
box-shadow: 0 6px 20px rgba(37, 211, 102, 0.6);
animation: none;
}

.whatsapp-button svg {
width: 32px;
height: 32px;
fill: #ffffff;
}

@keyframes pulse {
0% {
box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.6);
}

70% {
box-shadow: 0 0 0 25px rgba(37, 211, 102, 0);
}

100% {
box-shadow: 0 0 0 0 rgba(37, 211, 102, 0);
}
}

@media (max-width: 768px) {
.whatsapp-button {
bottom: 110px;
right: 20px;
width: 50px;
height: 50px;
}

.whatsapp-button svg {
width: 26px;
height: 26px;
}
}

/* ============================================
   PRODUCT PAGES
   ============================================ */

.produto-hero {
position: relative;
height: 100vh;
padding-top: 3.5rem;
display: flex;
align-items: center;
overflow: visible;
background-image: url('/assets/imagens/bg-cessao-credito.png');
background-size: cover;
background-position: center;
}


.produto-hero-bg {
position: absolute;
inset: 0;
background-size: cover;
background-position: center;
filter: brightness(0.65);
}

.produto-hero-content {
position: relative;
z-index: 2;
width: 100%;
max-width: 1200px;
margin: 0 auto;
padding: 0 60px 80px;
}

.produto-hero-breadcrumb {
display: flex;
align-items: center;
gap: 8px;
font-family: 'Inter', sans-serif;
font-size: 13px;
color: rgba(255,255,255,0.6);
margin-bottom: 16px;
}

.produto-hero-breadcrumb a {
color: rgba(255,255,255,0.6);
text-decoration: none;
transition: color 0.2s;
}

.produto-hero-breadcrumb a:hover {
color: #F4C35A;
}

.produto-hero-breadcrumb svg {
opacity: 0.5;
}

.produto-hero-tag {
font-family: 'Inter', sans-serif;
font-size: 11px;
font-weight: 600;
letter-spacing: 2.5px;
text-transform: uppercase;
color: #F4C35A;
margin-bottom: 12px;
}

.produto-hero-title {
font-family: 'Libre Baskerville', serif;
font-size: clamp(32px, 4.5vw, 54px);
font-weight: 700;
color: #ffffff;
line-height: 1.2;
max-width: 640px;
margin: 0 0 16px;
}

.produto-hero-desc {
font-family: 'Inter', sans-serif;
font-size: 17px;
color: rgba(255,255,255,0.72);
margin-top: 0;
max-width: 540px;
line-height: 1.65;
}

/* Content section */
.produto-content {
background: #eef3f9;
position: relative;
}


.produto-intro-grid {
max-width: 1200px;
margin: 0 auto;
display: grid;
grid-template-columns: 1.1fr 0.9fr;
gap: 72px;
align-items: start;
}

.produto-intro-title {
font-family: 'Libre Baskerville', serif;
font-size: 34px;
font-weight: 800;
color: #001028;
line-height: 1.2;
margin: 0 0 24px;
letter-spacing: -0.5px;
}

.produto-intro-title::after {
content: '';
display: block;
width: 48px;
height: 3px;
background: linear-gradient(90deg, #C9A84C, #F4E27A);
border-radius: 2px;
margin-top: 20px;
}

.produto-intro-text {
font-family: 'Inter', sans-serif;
font-size: 16px;
color: #475569;
line-height: 1.85;
margin: 0;
}

.produto-intro-text + .produto-intro-text {
margin-top: 18px;
}

/* Features panel */
.produto-features {
background: #ffffff;
border: 1px solid #dce6f0;
border-radius: 16px;
padding: 32px 28px;
box-shadow: 0 2px 12px rgba(0, 16, 40, 0.06);
}

.produto-features-title {
font-family: 'Inter', sans-serif;
font-size: 10px;
font-weight: 700;
letter-spacing: 2.5px;
text-transform: uppercase;
color: #C9A84C;
margin-bottom: 20px;
padding-bottom: 16px;
border-bottom: 1px solid #e8edf5;
position: relative;
}

.produto-features-title::after {
content: '';
display: block;
position: absolute;
bottom: -1px;
left: 0;
width: 2.5em;
height: 2px;
background: #C9A84C;
}

.produto-feature-item {
display: flex;
align-items: flex-start;
gap: 16px;
padding: 16px 0;
border-bottom: 1px solid #edf2f7;
transition: background 0.2s;
}

.produto-feature-item:last-child {
border-bottom: none;
padding-bottom: 0;
}

.produto-feature-icon {
width: 42px;
height: 42px;
border-radius: 10px;
background: linear-gradient(135deg, rgba(37, 135, 199, 0.12) 0%, rgba(37, 135, 199, 0.05) 100%);
border: 1px solid rgba(37, 135, 199, 0.15);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
color: #C9A84C;
}

.produto-feature-icon svg {
width: 18px;
height: 18px;
}

.produto-feature-text h4 {
font-family: 'Inter', sans-serif;
font-size: 14px;
font-weight: 700;
color: #001028;
margin: 0 0 4px;
letter-spacing: -0.1px;
}

.produto-feature-text p {
font-family: 'Inter', sans-serif;
font-size: 13px;
color: #64748b;
margin: 0;
line-height: 1.6;
}

/* CTA Banner */
.produto-cta {
background: linear-gradient(135deg, #001028 0%, #002050 100%);
padding: 72px 40px;
}

.produto-cta-inner {
max-width: 1200px;
margin: 0 auto;
display: flex;
align-items: center;
justify-content: space-between;
gap: 40px;
}

.produto-cta-text h2 {
font-family: 'Inter', sans-serif;
font-size: 32px;
font-weight: 700;
color: #ffffff;
margin: 0 0 12px;
}

.produto-cta-text p {
font-family: 'Inter', sans-serif;
font-size: 16px;
color: rgba(255,255,255,0.65);
margin: 0;
}

.produto-cta-btn {
display: inline-flex;
align-items: center;
gap: 10px;
background: #C9A84C;
color: #ffffff;
text-decoration: none;
font-family: 'Inter', sans-serif;
font-size: 15px;
font-weight: 600;
padding: 16px 32px;
border-radius: 10px;
white-space: nowrap;
transition: all 0.3s ease;
flex-shrink: 0;
}

.produto-cta-btn:hover {
background: #1d6fa8;
transform: translateY(-2px);
box-shadow: 0 8px 24px rgba(37, 135, 199, 0.4);
}

/* Other products section */
.produto-outros {
max-width: 1200px;
margin: 0 auto;
padding: 56px 40px 80px;
}

.produto-outros-title {
font-family: 'Inter', sans-serif;
font-size: 22px;
font-weight: 700;
color: #001028;
margin-bottom: 32px;
}

.produto-outros-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 20px;
}

.produto-card-link {
text-decoration: none;
display: block;
border-radius: 12px;
overflow: hidden;
background: #f7f9fc;
border: 1px solid #e8edf5;
transition: all 0.3s ease;
}

.produto-card-link:hover {
transform: translateY(-4px);
box-shadow: 0 12px 32px rgba(0,16,40,0.1);
border-color: #C9A84C;
}

.produto-card-img {
height: 160px;
background-size: cover;
background-position: center;
}

.produto-card-body {
padding: 18px 20px;
}

.produto-card-body h3 {
font-family: 'Inter', sans-serif;
font-size: 14px;
font-weight: 600;
color: #001028;
margin: 0 0 6px;
}

.produto-card-body p {
font-family: 'Inter', sans-serif;
font-size: 13px;
color: #718096;
margin: 0;
line-height: 1.5;
}

@media (max-width: 900px) {
.produto-intro-grid {
grid-template-columns: 1fr;
gap: 40px;
}

.produto-outros-grid {
grid-template-columns: repeat(2, 1fr);
}

.produto-cta-inner {
flex-direction: column;
text-align: center;
}
}

@media (max-width: 600px) {
.produto-hero-content {
padding: 0 20px 60px !important;
}


.produto-outros {
padding: 40px 20px 60px;
}

.produto-cta {
padding: 48px 20px;
}

.produto-outros-grid {
grid-template-columns: 1fr;
}
}

/* ===== Produto â€“ hero actions ===== */
.produto-hero-actions {
display: flex;
align-items: center;
gap: 20px;
margin-top: 28px;
flex-wrap: wrap;
}

.produto-hero-subtitle {
font-family: 'Inter', sans-serif;
font-size: 14px;
color: rgba(255,255,255,0.6);
}

.produto-hero-cta-btn {
display: inline-flex;
align-items: center;
gap: 8px;
background: #F4C35A;
color: #1a1a2e;
text-decoration: none;
font-family: 'Inter', sans-serif;
font-size: 15px;
font-weight: 700;
padding: 13px 28px;
border: 2px solid #F4C35A;
border-radius: 10px;
transition: all 0.25s ease;
white-space: nowrap;
}

.produto-hero-cta-btn:hover {
background: #e6b045;
border-color: #e6b045;
color: #1a1a2e;
transform: translateY(-1px);
box-shadow: 0 8px 24px rgba(244,195,90,0.35);
}

/* ===== Produto â€“ hero strip (mesmo visual do home) ===== */
.produto-hero-strip {
position: absolute;
bottom: 0;
left: 50%;
transform: translateX(-50%);
display: inline-flex;
align-items: center;
gap: 0;
width: 90%;
border-top: 1px solid rgba(255,255,255,0.12);
border-radius: 20px 20px 0 0;
background: rgba(255,255,255,0.04);
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
white-space: nowrap;
z-index: 2;
max-width: 1300px;
}

@media (max-width: 768px) {
.produto-hero-strip {
display: none;
}
.produto-hero {
height: auto !important;
min-height: 0;
}
.produto-hero-content {
padding: 0 24px 60px !important;
}
}

/* ===== Produto â€“ stats bar ===== */
.produto-stats {
background: #ffffff;
border-top: 1px solid #eaeef4;
border-bottom: 1px solid #eaeef4;
padding: 88px 80px;
position: relative;
overflow: hidden;
}

.produto-stats::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 3px;
background: linear-gradient(90deg, transparent 0%, #C9A84C 25%, #F4E27A 50%, #C9A84C 75%, transparent 100%);
}

.produto-stats::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 1px;
background: linear-gradient(90deg, transparent 0%, rgba(201,168,76,0.25) 50%, transparent 100%);
}

.produto-stats-inner {
max-width: 960px;
margin: 0 auto;
display: flex;
align-items: center;
justify-content: space-between;
gap: 64px;
}

.produto-stats-items {
display: flex;
gap: 0;
align-items: stretch;
flex-wrap: wrap;
flex: 1;
}

.produto-stats-image {
flex-shrink: 0;
}

.produto-stats-image img {
max-width: 500px;
width: 100%;
height: auto;
display: block;
border-radius: 16px;
box-shadow: 0 8px 32px rgba(0,0,0,0.10), 0 2px 8px rgba(0,0,0,0.06);
}

.produto-stat-item {
display: flex;
flex-direction: column;
gap: 10px;
padding: 0 48px 0 0;
margin-right: 48px;
border-right: 1px solid rgba(201,168,76,0.35);
}

.produto-stat-item:last-child {
border-right: none;
padding-right: 0;
margin-right: 0;
}

.produto-stat-value {
font-family: 'Inter', sans-serif;
font-size: 64px;
font-weight: 800;
line-height: 1;
background: linear-gradient(135deg, #A0762A 0%, #C9A84C 28%, #F4E27A 52%, #C9A84C 75%, #A0762A 100%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
color: transparent;
}

.produto-stat-label {
font-family: 'Inter', sans-serif;
font-size: 15px;
font-weight: 600;
color: #001028;
letter-spacing: 0.04em;
text-transform: uppercase;
position: relative;
padding-bottom: 10px;
display: inline-block;
}

.produto-stat-label::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
width: 60px;
height: 2px;
background: linear-gradient(90deg, #C9A84C, #F4E27A 60%, transparent);
border-radius: 2px;
}

.produto-stat-desc {
font-family: 'Inter', sans-serif;
font-size: 13.5px;
color: #4a5568;
line-height: 1.7;
max-width: 360px;
margin-top: 2px;
}

/* ===== Produto â€“ intro single (no features) ===== */
.produto-intro-single {
max-width: 820px;
margin: 0 auto;
}

/* ===== Produto – intro with background image ===== */
.produto-intro-with-bg {
max-width: 1200px;
margin: 0 auto;
background-size: cover;
background-repeat: no-repeat;
background-position: center center;
border-radius: 20px;
min-height: 560px;
display: flex;
align-items: center;
justify-content: flex-end;
padding: 56px 64px;
overflow: hidden;
}

.produto-intro-bg-text {
max-width: 520px;
position: relative;
z-index: 3;
}

.produto-intro-with-bg .produto-intro-title {
color: #ffffff;
font-size: 36px;
}

.produto-intro-with-bg .produto-intro-title::after {
background: linear-gradient(90deg, #C9A84C, #F4E27A);
}

.produto-intro-with-bg .produto-intro-text {
color: rgba(255, 255, 255, 0.82);
font-size: 15.5px;
line-height: 1.8;
}

@media (max-width: 900px) {
.produto-intro-with-bg {
justify-content: flex-start;
padding: 40px 40px;
}
.produto-intro-bg-text {
max-width: 100%;
background: transparent;
border-radius: 12px;
padding: 28px 24px;
}
}

@media (max-width: 600px) {
.produto-intro-with-bg {
padding: 32px 20px;
border-radius: 14px;
}
}

/* ===== Produto â€” content full background variant ===== */
.produto-content--full-bg {
padding: 0 !important;
background: linear-gradient(135deg, #030d1e 0%, #091c3a 50%, #030d1e 100%);
min-height: 500px;
display: flex;
align-items: center;
justify-content: center;
}

.produto-content--full-bg .produto-intro-with-bg {
max-width: none;
width: 100%;
margin: 0;
border-radius: 0;
min-height: auto;
justify-content: center;
padding: 64px 72px;
background: transparent;
border: 1px solid rgba(201, 168, 76, 0.35);
position: relative;
overflow: hidden;
}

/* Iluminação de borda: canto superior esquerdo */
.produto-content--full-bg .produto-intro-with-bg::before {
display: block;
content: '';
position: absolute;
top: -1px;
left: -1px;
width: 96px;
height: 96px;
border-top: 2px solid rgba(244, 226, 122, 0.95);
border-left: 2px solid rgba(244, 226, 122, 0.95);
border-radius: 0;
filter: drop-shadow(0 0 6px rgba(201, 168, 76, 0.9)) drop-shadow(0 0 14px rgba(201, 168, 76, 0.45));
pointer-events: none;
z-index: 4;
}

/* Iluminação de borda: canto inferior direito */
.produto-content--full-bg .produto-intro-with-bg::after {
display: block;
content: '';
position: absolute;
bottom: -1px;
right: -1px;
width: 96px;
height: 96px;
border-bottom: 2px solid rgba(244, 226, 122, 0.95);
border-right: 2px solid rgba(244, 226, 122, 0.95);
border-radius: 0;
filter: drop-shadow(0 0 6px rgba(201, 168, 76, 0.9)) drop-shadow(0 0 14px rgba(201, 168, 76, 0.45));
pointer-events: none;
z-index: 4;
}

/* Camada decorativa: ícone + linha + pontos */
.produto-intro-bg-deco {
position: absolute;
inset: 0;
pointer-events: none;
z-index: 2;
}

.produto-content--full-bg .produto-intro-bg-deco {
inset: 5%;
}

/* Grade de pontos dourados (direita) */
.produto-intro-bg-deco::before {
content: '';
position: absolute;
right: 5.5%;
top: 50%;
transform: translateY(-50%);
width: 168px;
height: 148px;
background-image: radial-gradient(circle, rgba(201, 168, 76, 0.42) 1.5px, transparent 1.5px);
background-size: 18px 18px;
}


/* Ícone circular */
.produto-intro-bg-icon {
position: absolute;
left: 6%;
top: 50%;
transform: translateY(-50%);
width: 92px;
height: 92px;
filter: drop-shadow(0 0 10px rgba(201, 168, 76, 0.3));
}

/* Linha vertical divisória */
.produto-intro-bg-vline {
position: absolute;
left: 18%;
top: 12%;
height: 76%;
width: 1px;
background: linear-gradient(to bottom, transparent 0%, rgba(201, 168, 76, 0.62) 15%, rgba(201, 168, 76, 0.62) 85%, transparent 100%);
}

/* Faísca no topo da linha */
.produto-intro-bg-vline::before {
content: '';
position: absolute;
top: -6px;
left: -6px;
width: 13px;
height: 13px;
background: radial-gradient(circle, rgba(244, 195, 90, 0.95) 0%, rgba(201, 168, 76, 0.4) 45%, transparent 70%);
border-radius: 50%;
}

/* Ocultar decorações em mobile */
@media (max-width: 900px) {
.produto-intro-bg-icon,
.produto-intro-bg-vline {
display: none;
}
.produto-intro-bg-deco::before {
display: none;
}
}

/* No layout com card, ocultar ícone e linha vertical */
.produto-content--full-bg .produto-intro-bg-icon,
.produto-content--full-bg .produto-intro-bg-vline {
display: none;
}

/* Bolinhas: canto superior direito */
.produto-content--full-bg .produto-intro-bg-deco::before {
right: 0;
top: 0;
transform: none;
width: 420px;
height: 360px;
background-image: radial-gradient(circle, rgba(201, 168, 76, 0.58) 1.8px, transparent 1.8px);
background-size: 20px 20px;
-webkit-mask-image: radial-gradient(ellipse 90% 90% at top right, rgba(0,0,0,0.95) 0%, rgba(0,0,0,0.6) 38%, transparent 72%);
mask-image: radial-gradient(ellipse 90% 90% at top right, rgba(0,0,0,0.95) 0%, rgba(0,0,0,0.6) 38%, transparent 72%);
}

/* Bolinhas: canto inferior esquerdo */
.produto-content--full-bg .produto-intro-bg-deco::after {
content: '';
position: absolute;
left: 0;
bottom: 0;
top: auto;
transform: none;
width: 420px;
height: 360px;
background-image: radial-gradient(circle, rgba(201, 168, 76, 0.58) 1.8px, transparent 1.8px);
background-size: 20px 20px;
-webkit-mask-image: radial-gradient(ellipse 90% 90% at bottom left, rgba(0,0,0,0.95) 0%, rgba(0,0,0,0.6) 38%, transparent 72%);
mask-image: radial-gradient(ellipse 90% 90% at bottom left, rgba(0,0,0,0.95) 0%, rgba(0,0,0,0.6) 38%, transparent 72%);
}

.produto-content--full-bg .produto-intro-bg-text {
max-width: 680px;
text-align: center;
}

.produto-content--full-bg .produto-intro-title::after {
margin: 20px auto 0;
}

@media (max-width: 900px) {
.produto-content--full-bg {
height: auto;
min-height: 500px;
padding: 0 !important;
}
.produto-content--full-bg .produto-intro-with-bg {
padding: 48px 36px;
border-radius: 0;
}
.produto-content--full-bg .produto-intro-bg-text {
margin-left: 0;
max-width: 100%;
}
.produto-content--full-bg .produto-intro-bg-deco::before,
.produto-content--full-bg .produto-intro-bg-deco::after {
width: 240px;
height: 200px;
}
}

@media (max-width: 600px) {
.produto-content--full-bg {
padding: 0 !important;
}
.produto-content--full-bg .produto-intro-with-bg {
padding: 40px 24px;
}
.produto-content--full-bg .produto-intro-bg-text {
max-width: 100%;
}
.produto-content--full-bg .produto-intro-with-bg::before,
.produto-content--full-bg .produto-intro-with-bg::after {
width: 64px;
height: 64px;
}
.produto-content--full-bg .produto-intro-bg-deco::before,
.produto-content--full-bg .produto-intro-bg-deco::after {
width: 180px;
height: 150px;
}
}

.produto-intro-single .produto-intro-title {
font-size: 38px;
}

.produto-intro-single .produto-intro-text {
font-size: 17px;
color: #4a5568;
}

/* ===== Produto â€“ legal section ===== */
.produto-legal {
background: #f7f9fc;
padding: 72px 40px;
}

.produto-legal-inner {
max-width: 1200px;
margin: 0 auto;
}

.produto-legal-title {
font-family: 'Inter', sans-serif;
font-size: 28px;
font-weight: 700;
color: #001028;
margin: 0 0 40px;
}

.produto-legal-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 24px;
}

.produto-legal-card {
background: #ffffff;
border: 1px solid #e8edf5;
border-radius: 12px;
padding: 28px 30px;
box-shadow: 0 4px 18px rgba(0, 16, 40, 0.09);
}

.produto-legal-card h3 {
font-family: 'Inter', sans-serif;
font-size: 16px;
font-weight: 700;
color: #001028;
margin: 0 0 12px;
}

.produto-legal-card p {
font-family: 'Inter', sans-serif;
font-size: 14px;
color: #4a5568;
line-height: 1.65;
margin: 0;
}

/* Legal header: título + subtítulo agrupados */
.produto-legal-header {
margin: 0 0 40px;
}

/* Legal title: gold underline only under “Vali” */
.produto-legal-header .produto-legal-title {
margin: 0 0 10px;
}

.legal-title-underline {
display: inline;
background: linear-gradient(#C9A84C, #C9A84C) left bottom / 0% 2px no-repeat;
padding-bottom: 5px;
animation: gold-underline-flash 3s ease forwards;
}

@keyframes gold-underline-flash {
0%   { background-size: 0% 2px; }
25%  { background-size: 100% 2px; }
65%  { background-size: 100% 2px; }
100% { background-size: 0% 2px; }
}

@keyframes gold-underline-grow {
0%   { background-size: 0% 2px; }
100% { background-size: 100% 2px; }
}

.produto-legal--cessao-credito .legal-title-underline,
.produto-legal--permuta-imobiliario .legal-title-underline {
animation: gold-underline-grow 1.2s ease forwards;
}

.produto-legal--contratual .legal-title-underline,
.produto-legal--licitacoes .legal-title-underline,
.produto-legal--acoes-judiciais .legal-title-underline,
.produto-legal--adiantamento-pagamento .legal-title-underline,
.produto-legal--operacoes-financeiras .legal-title-underline {
animation: gold-underline-grow 1.2s ease forwards;
}

/* Legal subtitle */
.produto-legal-subtitle {
font-family: 'Inter', sans-serif;
font-size: 16px;
color: #4a5568;
line-height: 1.5;
margin: 0;
}

/* Card with image: image LEFT (smaller, full-height), text RIGHT */
.produto-legal-card--with-img {
display: flex;
align-items: stretch;
gap: 0;
padding: 0;
overflow: hidden;
}

.produto-legal-card-img {
flex: 0 0 230px;
border-right: 3px solid #C9A84C;
border-top: none;
border-left: none;
border-bottom: none;
border-radius: 0;
display: flex;
align-items: center;
justify-content: center;
background: #eef3fa;
overflow: hidden;
}

.produto-legal-card-img img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}

.produto-legal-card--with-img .produto-legal-card-text {
flex: 1;
min-width: 0;
padding: 24px 22px;
box-shadow: inset 4px 0 14px rgba(0, 16, 40, 0.07);
}

/* Card icon (gold shield above h3) */
.produto-card-icon {
display: flex;
align-items: center;
margin-bottom: 10px;
}

/* Card h3 with underline on first 3 letters */
.produto-legal-card-text h3 {
font-size: 18px;
}

.card-h3-underline {
display: inline;
background: linear-gradient(#C9A84C, #C9A84C) left bottom / 100% 2px no-repeat;
padding-bottom: 4px;
}

/* ===== Produto – requisitos ===== */
.produto-requisitos {
background: linear-gradient(135deg, #061220 0%, #0d2248 50%, #061220 100%);
padding: 80px 40px;
}

.produto-requisitos-inner {
max-width: 1100px;
margin: 0 auto;
}

/* Title wrapper + diamond decoration */
.req-title-wrapper {
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 10px;
margin-bottom: 56px;
}

.req-diamond-decoration {
display: flex;
align-items: center;
max-width: 400px;
width: 100%;
gap: 12px;
}

.req-diamond-decoration svg {
width: 28px;
height: 28px;
flex-shrink: 0;
}

.req-diamond-line {
flex: 1;
height: 1px;
}

.req-diamond-line--left {
background: linear-gradient(to right, transparent 0%, #C9A84C 100%);
}

.req-diamond-line--right {
background: linear-gradient(to left, transparent 0%, #C9A84C 100%);
}

.produto-req-title {
font-family: 'Libre Baskerville', serif;
font-size: 28px;
font-weight: 700;
color: #C9A84C;
margin: 0;
text-align: left;
letter-spacing: 0.5px;
}

/* List */
.produto-req-list {
display: flex;
flex-direction: column;
gap: 20px;
}

/* Each card */
.produto-req-item {
display: flex;
align-items: center;
border: 1px solid rgba(201, 168, 76, 0.5);
background: linear-gradient(135deg, rgba(3, 10, 28, 0.82) 0%, rgba(5, 14, 38, 0.55) 100%);
border-radius: 10px;
overflow: hidden;
min-height: 88px;
padding: 0;
}

.produto-req-item:last-child {
border-bottom: 1px solid rgba(201, 168, 76, 0.5);
}

/* Number – left block with diagonal golden border */
.req-num-wrapper {
position: relative;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
align-self: stretch;
min-width: 84px;
padding: 20px 28px 20px 24px;
background: #040c1e;
transform: skewX(-10deg);
}

.req-num-wrapper::after {
content: '';
position: absolute;
top: 0;
right: -1.5px;
width: 2.5px;
height: 100%;
background: linear-gradient(to bottom,
    rgba(201, 168, 76, 0.35) 0%,
    #C9A84C 28%,
    #FFE29A 50%,
    #C9A84C 72%,
    rgba(201, 168, 76, 0.35) 100%
);
}

.req-num-inner {
font-family: 'Inter', sans-serif;
font-size: 38px;
font-weight: 800;
color: #C9A84C;
line-height: 1;
position: relative;
z-index: 1;
transform: skewX(10deg);
}

/* Icon circle */
.req-icon-circle {
display: flex;
align-items: center;
justify-content: center;
width: 52px;
height: 52px;
border-radius: 50%;
border: 1.5px solid #C9A84C;
flex-shrink: 0;
margin-left: 24px;
}

/* Vertical divider */
.req-v-divider {
width: 1px;
height: 48px;
background: #C9A84C;
margin: 0 20px;
flex-shrink: 0;
align-self: center;
}

/* Body */
.req-body {
flex: 1;
padding: 22px 24px 22px 0;
}

.req-body h3 {
font-family: 'Inter', sans-serif;
font-size: 17px;
font-weight: 700;
color: #ffffff;
margin: 0 0 8px;
}

.req-body p {
font-family: 'Inter', sans-serif;
font-size: 14px;
color: rgba(255, 255, 255, 0.62);
line-height: 1.7;
margin: 0;
}

/* ===== Responsive: new sections ===== */
@media (max-width: 900px) {
.produto-legal-grid {
grid-template-columns: 1fr;
}
.produto-stats-inner {
flex-direction: column;
align-items: flex-start;
gap: 40px;
}
.produto-stats-image {
display: none;
}
.produto-stats-items {
flex-direction: column;
gap: 32px;
}
.produto-stat-item {
border-right: none;
border-left: none;
padding-right: 0;
padding-left: 0;
margin-right: 0;
}
.produto-stat-item:last-child {
border-right: none;
}
.produto-stat-value {
font-size: 48px;
}
.produto-hero-actions {
gap: 16px;
}
}

@media (max-width: 600px) {
.produto-stats {
padding: 56px 24px;
}
.produto-legal {
padding: 48px 20px;
}
.produto-requisitos {
padding: 48px 20px;
}
.req-num-wrapper {
min-width: 70px;
padding: 16px 22px 16px 18px;
}
.req-num-inner {
font-size: 30px;
}
.req-icon-circle {
width: 44px;
height: 44px;
margin-left: 16px;
}
.req-v-divider {
margin: 0 14px;
height: 40px;
}
.req-body {
padding: 18px 16px 18px 0;
}
.produto-hero-actions {
flex-direction: column;
align-items: flex-start;
gap: 12px;
}
.produto-legal-title,
.produto-req-title {
font-size: 22px;
}
}

/* Rotating words */
.rotating-words-wrapper {
display: inline-grid;
vertical-align: middle;
}
.rotating-words-wrapper .rotating-word {
grid-area: 1 / 1;
color: #C9A84C;
opacity: 0;
transform: translateY(8px);
transition: opacity 0.45s ease, transform 0.45s ease;
white-space: nowrap;
}
.rotating-words-wrapper .rotating-word.active {
opacity: 1;
transform: translateY(0);
}

/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   RESPONSIVIDADE MOBILE â€” CORREÃ‡Ã•ES GLOBAIS
â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */

/* â”€â”€ Sidebar mobile: altura pelo conteÃºdo â”€â”€ */
@media (max-width: 768px) {
.sidebar {
height: auto !important;
max-height: 85vh;
overflow-y: auto;
}
}

/* â”€â”€ Hero split â€” empilhar esquerda + formulÃ¡rio â”€â”€ */
@media (max-width: 768px) {
.hero-content-split {
padding: 30px 20px 40px !important;
gap: 28px !important;
}
.hero-left {
max-width: 100% !important;
width: 100%;
}
.hero-title {
min-height: auto !important;
max-width: 100%;
}
.hero-title-dash {
font-size: 34px !important;
}
.hero-subtitle-new {
max-width: 100%;
text-align: center;
}
.hero-cta-buttons {
flex-wrap: nowrap;
gap: 12px;
}
/* Trust badges: lado a lado */
.hero-trust-badges {
flex-wrap: wrap;
gap: 10px;
}
.hero-form-card {
width: 100% !important;
max-width: 100% !important;
flex-shrink: 1 !important;
box-sizing: border-box;
}
}

@media (max-width: 480px) {
.hero-title-dash {
font-size: 28px !important;
}
.hero-form-card {
padding: 22px 18px 18px !important;
}
.hero-cta-buttons {
flex-direction: column;
align-items: center;
}
.btn-hero-gold,
.btn-hero-outline {
width: 100%;
max-width: 340px;
justify-content: center;
}
.hero-trust-badges {
flex-direction: column;
align-items: flex-start;
}
}

/* â”€â”€ Nossa EssÃªncia â€” layout mobile completo â”€â”€ */
@media (max-width: 768px) {
#nossa-essencia {
height: auto !important;
min-height: 0;
position: relative;
}
/* Filtro escuro sobre a imagem de fundo para legibilidade */
#nossa-essencia::before {
content: '';
display: block;
position: absolute;
inset: 0;
background: rgba(0, 10, 40, 0.58);
z-index: 1;
pointer-events: none;
}
.essencia-layout {
position: relative;
z-index: 2;
flex-direction: column;
}
/* Imagem esquerda: oculta no mobile (versÃ£o mobile fica abaixo do subtÃ­tulo) */
.essencia-lado-esquerdo {
display: none !important;
}
/* Imagem mobile: abaixo do subtÃ­tulo, tamanho proporcional */
.essencia-img-mobile {
display: block;
width: 100%;
max-width: 100%;
margin: 4px auto 16px;
border-radius: 10px;
object-fit: contain;
}
.essencia-lado-direito {
flex: none;
padding: 24px 20px 36px 20px !important;
gap: 16px;
width: 100%;
box-sizing: border-box;
}
.essencia-titulo-novo {
font-size: 30px;
}
.essencia-subtitulo-novo {
font-size: 14px;
}
.essencia-subtitulo-novo br {
display: none;
}
.essencia-right-block {
width: 100%;
}
/* Manter grid 2 colunas no mobile (igual ao desktop) */
.essencia-beneficios-grid {
grid-template-columns: 1fr 1fr;
}
.essencia-ben-item {
padding: 14px 12px;
gap: 10px;
}
/* BotÃ£o: sem quebra de linha errada */
.essencia-btn-wa {
flex-wrap: nowrap;
padding: 12px 16px;
gap: 10px;
width: 100%;
box-sizing: border-box;
}
.essencia-btn-circulo {
width: 36px;
height: 36px;
flex-shrink: 0;
}
.essencia-btn-textos {
flex: 1;
min-width: 0;
}
.essencia-btn-textos strong {
font-size: 13px;
white-space: nowrap;
}
.essencia-btn-textos span {
font-size: 11px;
}
.essencia-btn-seta {
width: 18px;
height: 18px;
flex-shrink: 0;
}
}

/* -- Produtos mobile: setas acima do carousel, alinhadas a direita -- */
@media (max-width: 768px) {
.nossos-produtos-container {
display: flex !important;
flex-direction: column;
padding: 0 20px !important;
}
.nossos-produtos-header {
display: block;
}
.nossos-produtos-title-row {
display: flex;
flex-direction: row;
align-items: flex-start;
justify-content: space-between;
}
.nossos-produtos-subtitulo {
margin-top: 0 !important;
font-size: 14px !important;
max-width: 100%;
}
.carousel-wrapper {
grid-area: unset;
min-width: 0;
}
.carousel-arrows-inline {
grid-area: unset;
display: flex !important;
flex-direction: row;
justify-content: flex-end;
align-items: center;
width: 100% !important;
gap: 10px;
}
}

/* ===== cessao-credito: card/boxed hero layout ===== */
.produto-hero--cessao-credito {
height: 100vh;
min-height: 100vh;
background-image: url('/assets/imagens/bg-cessao-credito.png');
background-size: cover;
background-position: center;
padding-top: 3.5rem;
display: flex;
align-items: center;
overflow: visible;
}

.produto-hero--cessao-credito::before,
.produto-hero--cessao-credito::after {
display: none;
}

/* Card: texto sobre a imagem de fundo */
.cessao-hero-card {
position: relative;
width: 100%;
z-index: 2;
}

.produto-hero--permuta-imobiliario::before {
display: none;
}

.cessao-tag-icon {
display: flex;
align-items: center;
gap: 6px;
}

.cessao-title-gold {
color: #F4C35A;
display: block;
}

.cessao-gold-text {
color: #F4C35A;
}


/* Coluna esquerda: texto com overlay escuro */
.cessao-hero-left {
position: relative;
flex: 0 0 54%;
padding: 64px 52px;
display: flex;
align-items: center;
z-index: 1;
}


.cessao-hero-text {
position: relative;
z-index: 1;
}

/* Coluna direita: imagem credito.png */
.cessao-hero-right {
flex: 1;
position: relative;
overflow: hidden;
}

.cessao-hero-right img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
}

@media (max-width: 900px) {
.produto-hero--cessao-credito,
.produto-hero {
    padding: 260px 32px 60px;
    height: auto;
    min-height: 0;
    position: relative;
}
.produto-hero--cessao-credito::after,
.produto-hero::after {
    content: '';
    display: block;
    position: absolute;
    inset: 0;
    background: rgba(0, 10, 28, 0.60);
    z-index: 1;
    pointer-events: none;
}
.cessao-hero-card {
    flex-direction: column;
    position: relative;
    z-index: 2;
}
.cessao-hero-left {
    flex: none;
    padding: 48px 36px 40px;
}
.cessao-hero-right {
    flex: none;
    height: 280px;
}
}

@media (max-width: 600px) {
.produto-hero--cessao-credito,
.produto-hero {
    padding: 240px 16px 48px;
}
.cessao-hero-left {
    padding: 36px 24px 32px;
}
.cessao-hero-right {
    height: 220px;
}
}

/* ============================================
   PRODUTO PAGES — RESPONSIVIDADE COMPLETA
   ============================================ */

/* Base: card do hero cessao-credito precisa de flex */
.cessao-hero-card {
    display: flex;
    width: 100%;
}

/* Hero: desc não pode ultrapassar o container */
.produto-hero-desc {
    max-width: 100%;
    word-break: break-word;
}

/* ── Tablet (≤ 1024px) ───────────────────── */
@media (max-width: 1024px) {
    .produto-stats {
        padding: 64px 40px;
    }
    .produto-content {
        padding: 64px 32px;
    }
    .produto-intro-title {
        font-size: 28px;
    }
    .produto-cta {
        padding: 56px 32px;
    }
    .produto-cta-text h2 {
        font-size: 28px;
    }
}

/* ── Mobile largo (≤ 768px) ──────────────── */
@media (max-width: 768px) {
    /* Stats */
    .produto-stats {
        padding: 52px 20px;
    }
    .produto-stat-value {
        font-size: 40px;
    }
    .produto-stat-label {
        font-size: 13px;
    }
    .produto-stat-desc {
        font-size: 13px;
        max-width: 100%;
    }

    /* Content section */
    .produto-content {
        padding: 52px 20px;
    }
    .produto-intro-title {
        font-size: 26px;
    }
    .produto-intro-text {
        font-size: 15px;
    }

    /* Legal */
    .produto-legal {
        padding: 48px 20px;
    }
    .produto-legal-title {
        font-size: 22px;
        margin-bottom: 24px;
    }
    .produto-legal-card {
        padding: 20px;
    }
    .produto-legal-card--with-img {
        padding: 0;
        flex-direction: column;
    }
    .produto-legal-card-img {
        flex: none;
        width: 100%;
        height: 180px;
        border-right: none;
        border-bottom: 3px solid #C9A84C;
    }
    .produto-legal-card--with-img .produto-legal-card-text {
        padding: 18px 16px;
        box-shadow: none;
    }

    /* Requisitos */
    .produto-requisitos {
        padding: 52px 20px;
    }
    .produto-req-title {
        font-size: 22px;
    }
    .req-title-wrapper {
        gap: 12px;
        margin-bottom: 40px;
    }
    .req-body h3 {
        font-size: 16px;
    }
    .req-body p {
        font-size: 13px;
    }

    /* CTA */
    .produto-cta {
        padding: 48px 20px;
    }
    .produto-cta-inner {
        flex-direction: column;
        align-items: flex-start;
        gap: 24px;
        text-align: left;
    }
    .produto-cta-text h2 {
        font-size: 24px;
        margin-bottom: 8px;
    }
    .produto-cta-text p {
        font-size: 15px;
    }
    .produto-cta-btn {
        width: 100%;
        justify-content: center;
    }

    /* Hero cessão de crédito */
    .cessao-hero-card {
        flex-direction: column;
    }
    .cessao-hero-left {
        flex: none;
        width: 100%;
        padding: 48px 20px 40px;
    }
    .produto-hero-title {
        font-size: clamp(26px, 6vw, 48px);
    }
    .produto-hero-desc {
        font-size: 15px;
        max-width: 100%;
    }
    /* Botão hero: largura total */
    .produto-hero-actions .essencia-btn-wa {
        width: 100%;
        box-sizing: border-box;
    }
    /* Botão hero CTA padrão */
    .produto-hero-actions .produto-hero-cta-btn {
        width: 100%;
        justify-content: center;
    }
}

/* ── Mobile pequeno (≤ 480px) ────────────── */
@media (max-width: 480px) {
    /* Stats */
    .produto-stats {
        padding: 40px 16px;
    }
    .produto-stat-value {
        font-size: 34px;
    }
    .produto-stat-label {
        font-size: 12px;
    }

    /* Content */
    .produto-content {
        padding: 40px 16px;
    }
    .produto-intro-title {
        font-size: 22px;
    }
    .produto-intro-text {
        font-size: 14px;
    }

    /* Features */
    .produto-features {
        padding: 20px 16px;
    }

    /* Legal */
    .produto-legal {
        padding: 36px 16px;
    }
    .produto-legal-title {
        font-size: 20px;
    }
    .produto-legal-card {
        padding: 16px;
    }
    .produto-legal-card h3 {
        font-size: 14px;
    }
    .produto-legal-card p {
        font-size: 13px;
    }
    .produto-legal-card--with-img {
        padding: 0;
        flex-direction: column;
    }
    .produto-legal-card-img {
        flex: none;
        width: 100%;
        height: 160px;
        border-right: none;
        border-bottom: 3px solid #C9A84C;
    }
    .produto-legal-card--with-img .produto-legal-card-text {
        padding: 14px;
        box-shadow: none;
    }

    /* Requisitos */
    .produto-requisitos {
        padding: 36px 16px;
    }
    .produto-req-title {
        font-size: 20px;
    }
    .req-num-wrapper {
        min-width: 58px;
        padding: 14px 18px 14px 14px;
    }
    .req-num-inner {
        font-size: 26px;
    }
    .req-icon-circle {
        width: 38px;
        height: 38px;
        margin-left: 12px;
    }
    .req-icon-circle svg {
        width: 18px;
        height: 18px;
    }
    .req-v-divider {
        margin: 0 10px;
        height: 36px;
    }
    .req-body h3 {
        font-size: 15px;
    }
    .req-body p {
        font-size: 13px;
    }

    /* CTA */
    .produto-cta {
        padding: 36px 16px;
    }
    .produto-cta-text h2 {
        font-size: 20px;
    }
    .produto-cta-text p {
        font-size: 14px;
    }

    /* Hero cessão */
    .cessao-hero-left {
        padding: 32px 16px 28px;
    }
    .produto-hero-tag {
        font-size: 10px;
    }
    .produto-hero-desc {
        font-size: 14px;
    }
    /* Botão hero: texto menor para caber */
    .produto-hero-actions .essencia-btn-wa {
        padding: 10px 14px;
        gap: 8px;
    }
    .produto-hero-actions .essencia-btn-textos strong {
        font-size: 12px;
    }
    .produto-hero-actions .essencia-btn-textos span {
        font-size: 10px;
    }
    .produto-hero-actions .essencia-btn-circulo {
        width: 32px;
        height: 32px;
    }
}

/* =====================================================
   PRODUTO CTA — LICITAÇÕES (layout branco 2 colunas)
   ===================================================== */

.produto-cta--licitacoes {
    background: #ffffff;
    padding: 88px 40px;
}

.cta-licit-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: start;
    position: relative;
}

.cta-licit-inner::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 4%;
    height: 92%;
    width: 1.5px;
    background: linear-gradient(to bottom, transparent 0%, #C9A84C 15%, #F4E27A 50%, #C9A84C 85%, transparent 100%);
    transform: translateX(-50%);
    pointer-events: none;
}

/* ── Coluna esquerda ── */
.cta-licit-left {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.cta-licit-title-block {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.cta-licit-eyebrow {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: #C9A84C;
    margin: 0;
}

.cta-licit-heading {
    font-family: 'Libre Baskerville', serif;
    font-size: clamp(42px, 5vw, 50px);
    font-weight: 800;
    color: #001028;
    text-transform: uppercase;
    line-height: 1.05;
    margin: 0;
    letter-spacing: -0.5px;
}

.cta-licit-ul {
    display: inline-block;
    position: relative;
}

.cta-licit-ul::after {
    content: '';
    position: absolute;
    bottom: -4px;
    left: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, #C9A84C, #F4E27A);
    border-radius: 2px;
}

/* ── Textos descritivos ── */
.cta-licit-body-texts {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.cta-licit-body-texts p {
    font-family: 'Inter', sans-serif;
    font-size: 15.5px;
    color: #475569;
    line-height: 1.75;
    margin: 0;
}

/* ── Grid de features 2×2 ── */
.cta-licit-feats {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px 24px;
}

.cta-licit-feat-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.cta-licit-circle {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background: rgba(201, 168, 76, 0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.cta-licit-feat-body {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding-top: 3px;
}

.cta-licit-feat-body strong {
    font-family: 'Inter', sans-serif;
    font-size: 12.5px;
    font-weight: 700;
    color: #001028;
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

.cta-licit-feat-body span {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    color: #64748b;
    line-height: 1.5;
    display: block;
}

/* ── Coluna direita ── */
.cta-licit-right {
    display: flex;
    flex-direction: column;
    gap: 20px;
    justify-content: center;
    align-self: center;
}

/* Botão WhatsApp */
.cta-licit-wa-btn {
    display: flex;
    align-items: center;
    gap: 14px;
    background: #C9A84C;
    border-radius: 12px;
    padding: 14px 20px;
    text-decoration: none;
    transition: background 0.2s ease;
}

.cta-licit-wa-btn:hover {
    background: #b8963e;
    text-decoration: none;
}

.cta-wa-circle {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #001028;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.cta-wa-texts {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.cta-wa-texts strong {
    font-family: 'Inter', sans-serif;
    font-size: 15px;
    font-weight: 700;
    color: #001028;
    line-height: 1.2;
    display: block;
}

.cta-wa-texts span {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    color: rgba(0, 16, 40, 0.65);
    display: block;
}

.cta-wa-arrow {
    flex-shrink: 0;
    animation: seta-slide 1.2s ease-in-out infinite;
}

/* ── Novos elementos da coluna direita ── */
.cta-right-header {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 14px;
}

.cta-right-wa-top-circle {
    width: 52px;
    height: 52px;
    min-width: 52px;
    border-radius: 50%;
    background: rgba(201, 168, 76, 0.12);
    display: flex;
    align-items: center;
    justify-content: center;
}

.cta-right-title {
    font-family: 'Libre Baskerville', serif;
    font-size: 26px;
    font-weight: 800;
    color: #001028;
    line-height: 1.35;
    margin: 0;
}

.cta-right-title::after {
    display: none;
}

.cta-title-nos {
    border-bottom: 2px solid #C9A84C;
    padding-bottom: 2px;
}

.cta-right-sub {
    font-family: 'Inter', sans-serif;
    font-size: 15px;
    color: #64748b;
    line-height: 1.7;
    margin: 0;
}

.cta-right-security {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    padding: 0;
    background: none;
    border: none;
}

.cta-right-security svg {
    flex-shrink: 0;
    margin-top: 1px;
}

.cta-right-security span {
    font-family: 'Inter', sans-serif;
    font-size: 12.5px;
    color: #64748b;
    line-height: 1.55;
}

.cta-right-3cols {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 0;
    background: rgba(201, 168, 76, 0.06);
    border-radius: 10px;
}

.cta-right-col-item {
    display: flex;
    flex-direction: row;
    align-items: center;
    text-align: left;
    gap: 8px;
    padding: 10px 12px;
    background: none;
    border: none;
    border-radius: 0;
    position: relative;
}

.cta-right-col-item:not(:last-child)::after {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 55%;
    background: rgba(201, 168, 76, 0.5);
}

.cta-col-icon {
    width: 28px;
    height: 28px;
    min-width: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: none;
    border: none;
}

.cta-right-col-item span {
    font-family: 'Inter', sans-serif;
    font-size: 11.5px;
    font-weight: 600;
    color: #334155;
    line-height: 1.4;
}

/* ── Responsividade ── */
@media (max-width: 1024px) {
    .cta-licit-inner {
        gap: 48px;
    }
}

@media (max-width: 768px) {
    .produto-cta--licitacoes {
        padding: 56px 20px;
        overflow: hidden;
    }
    .cta-licit-inner {
        grid-template-columns: 1fr;
        gap: 40px;
        width: 100%;
        box-sizing: border-box;
    }
    .cta-licit-inner::after {
        display: none;
    }
    .cta-licit-heading {
        font-size: clamp(32px, 8vw, 38px);
        word-break: break-word;
    }
    .cta-licit-wa-btn {
        width: 100%;
        box-sizing: border-box;
    }
    .cta-licit-left,
    .cta-licit-right {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }
}

@media (max-width: 480px) {
    .produto-cta--licitacoes {
        padding: 44px 16px;
    }
    .cta-licit-feats {
        grid-template-columns: 1fr;
    }
    .cta-licit-eyebrow {
        font-size: 11px;
        letter-spacing: 1.5px;
    }
    .cta-licit-heading {
        font-size: clamp(26px, 7vw, 32px);
    }
    .cta-right-title {
        font-size: 17px;
    }
    .cta-right-wa-top-circle {
        width: 40px;
        height: 40px;
        min-width: 40px;
    }
    .cta-licit-wa-btn {
        padding: 12px 14px;
        gap: 10px;
    }
    .cta-wa-circle {
        width: 36px;
        height: 36px;
        min-width: 36px;
    }
    .cta-wa-texts strong {
        font-size: 13px;
    }
    .cta-wa-texts span {
        font-size: 11px;
    }
    .cta-right-3cols {
        grid-template-columns: repeat(3, 1fr);
    }
    .cta-right-col-item {
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding: 8px 4px;
        gap: 4px;
    }
    .cta-right-col-item span {
        font-size: 9.5px;
        word-break: break-word;
        hyphens: auto;
    }
    .cta-col-icon {
        width: 22px;
        height: 22px;
        min-width: 22px;
    }
}

/* =================================================================
   RESPONSIVIDADE GLOBAL — breakpoints faltantes
   ================================================================= */

/* ── Prevent horizontal overflow on all sizes ── */
html, body {
    overflow-x: hidden;
    max-width: 100%;
}

/* ── Hero split layout: tablet 1024px ── */
@media (max-width: 1024px) {
    .hero-content-split {
        padding: 60px 40px 80px !important;
        gap: 32px !important;
        align-items: center !important;
    }
    .hero-left {
        max-width: 480px;
    }
    .hero-title-dash {
        font-size: 38px !important;
    }
    .hero-form-card {
        width: 100%;
        max-width: 540px;
        padding: 24px 20px 20px !important;
    }
    .hero-subtitle-new {
        font-size: 15px;
    }
}

/* ── Hero split layout: tablet 900px ── */
@media (max-width: 900px) {
    .hero-content-split {
        flex-direction: column !important;
        padding: 50px 28px 130px !important;
        gap: 28px !important;
        align-items: stretch !important;
    }
    .hero-left {
        max-width: 100% !important;
        width: 100%;
        text-align: left;
    }
    .hero-title-dash {
        font-size: 34px !important;
    }
    .hero-title-text,
    .hero-title-description {
        text-align: left !important;
    }
    .hero-form-card {
        width: 100% !important;
        max-width: 480px !important;
        margin: 0;
    }
    .hero-cta-buttons {
        justify-content: flex-start;
    }
    .hero-trust-badges {
        justify-content: flex-start;
    }
}

/* ── Hero overlay: uniforme abaixo de 837px ── */
@media (max-width: 837px) {
    .hero-overlay {
        background: rgba(0, 10, 40, 0.65);
    }
}

/* ── Quem Somos: tablet 1024px ── */
@media (max-width: 1024px) {
    .quem-somos {
        padding: 70px 30px;
    }
    .quem-somos-text {
        width: 100%;
        font-size: 28px;
        margin-bottom: 60px;
    }
    .quem-somos-number {
        font-size: 48px;
    }
    .quem-somos-columns {
        gap: 30px;
    }
}

/* ── Quem Somos: mobile-xs 480px ── */
@media (max-width: 480px) {
    .quem-somos {
        padding: 60px 20px;
    }
    .quem-somos-text {
        font-size: 22px;
        margin-bottom: 48px;
    }
    .quem-somos-number {
        font-size: 38px;
    }
    .quem-somos-subtitle {
        font-size: 14px;
    }
    .quem-somos-description {
        font-size: 14px;
    }
}

/* ── Nossa Governança: tablet 1024px (text width) ── */
@media (max-width: 1024px) {
    .nossa-governanca {
        padding: 70px 30px;
    }
    .nossa-governanca-text {
        width: 100%;
        font-size: 28px;
        margin-bottom: 50px;
    }
}

/* ── Nossa Governança: mobile-xs 480px ── */
@media (max-width: 480px) {
    .nossa-governanca {
        padding: 60px 20px;
    }
    .nossa-governanca-text {
        font-size: 22px;
        margin-bottom: 40px;
    }
    .governanca-item-header {
        padding: 16px !important;
        gap: 12px !important;
    }
    .governanca-item-title {
        font-size: 14px !important;
    }
    .governanca-item-number {
        font-size: 18px !important;
        min-width: 32px !important;
    }
    .governanca-item-icon {
        font-size: 20px !important;
        min-width: 22px !important;
    }
    .governanca-image {
        height: 200px !important;
    }
    .governanca-item.active .governanca-item-content {
        padding: 16px !important;
    }
    .governanca-item-content p {
        font-size: 13px !important;
    }
}

/* ── Nossos Diferenciais: tablet 1024px ── */
@media (max-width: 1024px) {
    .nossos-diferenciais {
        padding: 60px 20px;
    }
    .nossos-diferenciais-container {
        width: 100%;
    }
    .nossos-diferenciais-title {
        font-size: 24px !important;
        white-space: normal !important;
        text-align: center;
    }
    .valor-card {
        padding: 24px !important;
    }
}

/* ── Nossos Diferenciais: mobile-xs 480px ── */
@media (max-width: 480px) {
    .nossos-diferenciais-title {
        font-size: 20px !important;
        letter-spacing: 0.3px !important;
    }
    .nossos-diferenciais-title-wrapper {
        gap: 14px;
    }
    .valor-card {
        padding: 20px !important;
    }
    .valor-card-title {
        font-size: 15px !important;
    }
    .valor-card-text {
        font-size: 13px !important;
    }
    .valor-center-top-img {
        max-height: none;
    }
    .valor-center-image {
        height: auto;
        min-height: 560px;
    }
}

/* ── Nossos Diferenciais: valor-center-image 400–480px ── */
@media (min-width: 400px) and (max-width: 480px) {
    .valor-center-image {
        min-height: 660px;
    }
}

/* ── O Que É Carta Fiança: mobile-xs 480px ── */
@media (max-width: 480px) {
    .o-que-e-carta-fianca {
        padding: 50px 16px !important;
    }
    .o-que-e-titulo-secao {
        font-size: 18px !important;
    }
    .o-que-e-texto {
        font-size: 13px !important;
    }
    .o-que-e-sidebar-box {
        padding: 16px !important;
    }
    .o-que-e-sidebar-titulo {
        font-size: 15px !important;
    }
    .o-que-e-botao {
        font-size: 13px !important;
        padding: 12px 22px !important;
    }
}

/* ── Nossa Essência: height fix for intermediate tablets ── */
@media (max-width: 1024px) {
    .nossa-essencia {
        height: auto !important;
        min-height: 0 !important;
    }
    #nossa-essencia {
        height: auto !important;
        min-height: 0 !important;
    }
}

/* ── Nossa Essência analise section: tablet 1024px ── */
@media (max-width: 1024px) {
    .essencia-titulo-novo {
        font-size: 36px !important;
    }
    .essencia-right-block {
        width: 100%;
    }
    .essencia-beneficios-grid {
        grid-template-columns: 1fr 1fr;
    }
}

/* ── Nossa Essência analise section: tablet intermediário 769–928px ── */
@media (min-width: 769px) and (max-width: 928px) {
    .essencia-lado-direito {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
    .essencia-right-block {
        width: 100%;
    }
    .essencia-beneficios-card {
        width: 100%;
        box-sizing: border-box;
    }
    .essencia-ben-item {
        padding: 12px 10px !important;
        gap: 8px !important;
    }
    .essencia-ben-icon svg {
        width: 22px !important;
        height: 22px !important;
    }
    .essencia-ben-titulo {
        font-size: 11px !important;
    }
    .essencia-ben-sub {
        font-size: 10px !important;
    }
}

/* ── Nossa Essência analise section: mobile 768px ── */
@media (max-width: 768px) {
    .essencia-beneficios-grid {
        grid-template-columns: 1fr 1fr;
    }
    .essencia-ben-item {
        padding: 14px 14px !important;
        gap: 10px !important;
    }
    .essencia-analise-titulo {
        font-size: 30px !important;
    }
}

/* ── Nossa Essência: mobile-xs 480px ── */
@media (max-width: 480px) {
    .essencia-titulo-novo {
        font-size: 26px !important;
    }
    .essencia-subtitulo-novo {
        font-size: 13px !important;
    }
    .essencia-beneficios-grid {
        grid-template-columns: 1fr 1fr;
    }
    .essencia-ben-item {
        padding: 10px 8px !important;
        gap: 8px !important;
    }
    .essencia-ben-icon svg {
        width: 20px !important;
        height: 20px !important;
    }
    .essencia-ben-titulo {
        font-size: 11px !important;
    }
    .essencia-ben-sub {
        font-size: 10px !important;
    }
    .essencia-btn-wa {
        padding: 14px 18px !important;
        gap: 12px !important;
    }
    .essencia-btn-circulo {
        width: 44px !important;
        height: 44px !important;
    }
}

/* ── Nossos Produtos: tablet 1024px ── */
@media (max-width: 1024px) {
    .nossos-produtos {
        padding: 60px 0 80px;
    }
    .nossos-produtos-container {
        padding: 0 30px;
    }
    .nossos-produtos-title {
        font-size: 30px !important;
    }
    .nossos-produtos-subtitulo {
        font-size: 14px;
    }
}

/* ── Footer: mobile 768px ── */
@media (max-width: 768px) {
    .footer {
        padding: 50px 24px 28px;
    }
    .footer-content {
        grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
        gap: 32px;
    }
    .footer-bottom {
        flex-direction: column;
        gap: 20px;
        align-items: flex-start;
        text-align: left;
        margin-top: 36px;
    }
    .footer-social {
        align-self: flex-start;
    }
}

/* ── Footer: mobile-xs 480px ── */
@media (max-width: 480px) {
    .footer {
        padding: 44px 16px 24px;
    }
    .footer-content {
        grid-template-columns: 1fr;
        gap: 28px;
    }
    .footer-logo img {
        height: 40px;
    }
    .footer-section h3 {
        font-size: 14px;
        margin-bottom: 14px;
    }
    .footer-copyright {
        font-size: 12px;
    }
}

/* ── Header: ensure logo always visible ── */
@media (max-width: 480px) {
    .header {
        padding: 12px 16px !important;
    }
    .logo img {
        height: 30px !important;
    }
    .hamburger {
        width: 36px;
        height: 36px;
    }
}

/* ── Sidebar: full-width on very small screens ── */
@media (max-width: 480px) {
    .sidebar-nav a,
    .sidebar-link {
        font-size: 14px !important;
        padding: 10px 14px !important;
    }
    .sidebar-submenu-link {
        font-size: 13px !important;
        padding: 9px 14px 9px 30px !important;
    }
}

/* ── WhatsApp button: very small screens ── */
@media (max-width: 480px) {
    .whatsapp-button {
        bottom: 90px !important;
        right: 14px !important;
        width: 46px !important;
        height: 46px !important;
    }
    .whatsapp-button svg {
        width: 24px !important;
        height: 24px !important;
    }
}

/* ── Hero trust badges: tablet ── */
@media (max-width: 1024px) {
    .hero-trust-badges {
        flex-wrap: wrap;
        gap: 12px;
    }
}

/* ── Carousel: intermediate 1024px ── */
@media (max-width: 1024px) {
    .carousel-card {
        flex: 0 0 calc(33.333% - 16px);
        min-width: 240px;
    }
}

/* ── Sections container padding: mobile ── */
@media (max-width: 480px) {
    .quem-somos-container,
    .nossos-diferenciais-container,
    .nossa-governanca-container {
        padding: 0 !important;
        width: 100% !important;
    }
}

/* ── Texto longo: evita overflow em telas pequenas ── */
@media (max-width: 768px) {
    .hero-title-dash br {
        display: none;
    }
    .essencia-subtitulo-novo br {
        display: none;
    }
    .home-analise-subtitulo br,
    .essencia-analise-desc br {
        display: none;
    }
}

/* ── Hero: empilha hero-form-card abaixo de hero-left abaixo de 1200px ── */
@media (max-width: 1200px) {
    .hero {
        height: auto;
        min-height: 100vh;
    }
    .hero-content.hero-content-split {
        flex-direction: column;
        align-items: flex-start;
        gap: 36px;
        padding: 64px 48px 130px;
        margin-top: 0;
    }
    .hero-left {
        max-width: 680px;
    }
    .hero-form-card {
        width: 100%;
        max-width: 540px;
    }
}

/* ── Carta Fiança: coluna principal full-width, sticky abaixo da imagem abaixo de 1200px ── */
@media (max-width: 1200px) {
    .o-que-e-wrapper {
        flex-direction: column;
    }
    .o-que-e-coluna-principal {
        width: 100%;
    }
    .o-que-e-coluna-lateral {
        width: 100%;
    }
    .o-que-e-sticky-container {
        position: static;
        padding: 20px 0 0;
    }
    .o-que-e-watermark {
        display: none;
    }
}

/* ── Hero split: alinhamento esquerdo forçado abaixo de 1024px ── */
@media (max-width: 1024px) {
    .hero-content.hero-content-split {
        align-items: flex-start !important;
        text-align: left !important;
    }
    .hero-cta-buttons {
        justify-content: flex-start !important;
    }
    .hero-trust-badges {
        justify-content: flex-start !important;
    }
    .hero-subtitle-new {
        text-align: left !important;
    }
    .hero-title-dash,
    .hero-title-text,
    .hero-title-description {
        text-align: left !important;
    }
}

/* ── hero-bottom-strip: wrap em 2 colunas abaixo de 864px (evita overflow) ── */
@media (max-width: 864px) {
    .hero-bottom-strip {
        flex-wrap: wrap;
        white-space: normal;
        left: 0;
        transform: none;
        width: 100%;
        max-width: 100%;
        border-radius: 0;
    }
    .hero-strip-sep {
        display: none;
    }
    .hero-strip-item {
        flex: 0 0 50%;
        box-sizing: border-box;
        padding: 10px 16px;
        gap: 10px;
    }
    .hero-strip-icon {
        width: 28px;
        height: 28px;
    }
    .hero-strip-label {
        font-size: 11px;
    }
}

/* ── hero-bottom-strip: visível e responsivo abaixo de 768px ── */
@media (max-width: 768px) {
    .hero-bottom-strip {
        display: flex !important;
        flex-wrap: wrap;
        white-space: normal;
        left: 0;
        transform: none;
        width: 100%;
        max-width: 100%;
        border-radius: 0;
    }
    .hero-strip-sep {
        display: none;
    }
    .hero-strip-item {
        flex: 0 0 50%;
        box-sizing: border-box;
        padding: 10px 14px;
        gap: 8px;
    }
    .hero-strip-icon {
        width: 26px;
        height: 26px;
    }
    .hero-strip-label {
        font-size: 11px;
    }
    /* padding inferior do conteúdo para o strip não sobrepor */
    .hero-content.hero-content-split {
        padding-bottom: 110px !important;
    }
}

/* ── Nossos Diferenciais: valor-center-image 1025px+ ── */
@media (min-width: 1025px) {
    .valor-grid {
      grid-template-columns: 1.2fr 1.5fr 1.2fr;
    }
    .valor-column-left,
    .valor-column-right {
        align-self: stretch;
        min-height: 0;
    }
    .valor-card {
        flex: 1;
        min-height: 0;
    }
    /* align-self: start faz a imagem ditar a altura do row;
       as colunas (stretch) se esticam para acompanhar */
    .valor-center-image {
        align-self: start;
    }
    .valor-center-top-img {
        position: relative;
        width: 100%;
        height: auto;
        display: block;
        object-fit: unset;
    }
}

/* ══════════════════════════════════════════════════════
   MEDIUM-LARGE SCREENS 1280px–1599px — escala intermediária de tipografia
   ══════════════════════════════════════════════════════ */
@media (min-width: 1280px) {

    /* ── Hero ── */
    .hero-title-dash {
        font-size: 52px;
    }
    .hero-subtitle-new {
        font-size: 17px;
    }
    .hero-form-title {
        font-size: 17px;
    }
    .btn-hero-gold,
    .btn-hero-outline {
        font-size: 16px;
    }
    .hero-stat-text strong {
        font-size: 16px;
    }
    .hero-stat-text span {
        font-size: 14px;
    }
    .hero-strip-label {
        font-size: 14px;
    }

    /* ── Nossos Produtos ── */
    .nossos-produtos-title {
        font-size: 39px;
    }
    .nossos-produtos-subtitulo {
        font-size: 17px;
    }
    .carousel-card-title {
        font-size: 26px;
    }
    .carousel-card-description {
        font-size: 15px;
    }

    /* ── Quem Somos ── */
    .quem-somos-text {
        font-size: 39px;
    }
    .quem-somos-number {
        font-size: 65px;
    }
    .quem-somos-description {
        font-size: 17px;
    }

    /* ── Nossos Diferenciais ── */
    .nossos-diferenciais-title {
        font-size: 33px !important;
    }
    .valor-card-title {
        font-size: 19px;
    }
    .valor-card-text {
        font-size: 15px;
    }

    /* ── Nossa Governança ── */
    .nossa-governanca-text {
        font-size: 39px;
    }
    .governanca-item-number {
        font-size: 30px;
    }
    .governanca-item-title {
        font-size: 17px;
    }
    .governanca-item-content p {
        font-size: 15px;
    }

    /* ── Nossa Essência ── */
    .essencia-titulo-novo {
        font-size: 57px;
    }
    .essencia-subtitulo-novo {
        font-size: 16px;
    }

    /* ── O Que É Carta Fiança ── */
    .o-que-e-titulo {
        font-size: 48px;
    }
    .o-que-e-titulo-secao {
        font-size: 26px;
    }
    .o-que-e-texto {
        font-size: 16px;
    }
    .o-que-e-sidebar-titulo {
        font-size: 20px;
    }

    /* ── Como Funciona ── */
    .como-funciona-subtitle {
        font-size: 39px;
    }
    .como-funciona-description {
        font-size: 17px;
    }
    .card-title {
        font-size: 22px;
    }
    .card-text {
        font-size: 16px;
    }

    /* ── Footer ── */
    .footer-section h3 {
        font-size: 17px;
    }
}

/* ══════════════════════════════════════════════════════
   LARGE SCREENS 1600px+ — escala global de texto e containers
   ══════════════════════════════════════════════════════ */
@media (min-width: 1600px) {

    /* ── Hero ── */
    .hero-title-dash {
        font-size: 56px;
    }
    .hero-subtitle-new {
        font-size: 18px;
    }
    .hero-trust-label {
        font-size: 15px;
    }
    .hero-form-title {
        font-size: 18px;
    }
    .hero-form-desc {
        font-size: 15px;
    }
    .hero-input {
        font-size: 15px;
    }
    .btn-hero-gold,
    .btn-hero-outline {
        font-size: 17px;
    }
    .hero-stat-text strong {
        font-size: 17px;
    }
    .hero-stat-text span {
        font-size: 15px;
    }
    .hero-strip-label {
        font-size: 15px;
    }

    /* ── Nossos Produtos ── */
    .nossos-produtos {
        padding: 80px 0 120px;
    }
    .nossos-produtos-container {
        max-width: 1540px;
        padding: 0 50px;
    }
    .nossos-produtos-header {
        margin-bottom: 72px;
    }
    .nossos-produtos-subheading {
        font-size: 15px;
    }
    .nossos-produtos-title {
        font-size: 42px;
    }
    .nossos-produtos-subtitulo {
        font-size: 18px;
        max-width: 740px;
    }
    .carousel-card {
        height: 480px;
    }
    .carousel-card-overlay {
        padding: 36px;
    }
    .carousel-card-title {
        font-size: 28px;
    }
    .carousel-card-description {
        font-size: 16px;
    }
    .carousel-card-btn {
        margin-top: 20px;
        padding: 10px 22px;
        font-size: 14px;
    }
    .carousel-arrow {
        width: 48px;
        height: 48px;
    }
    .carousel-arrow svg {
        width: 22px;
        height: 22px;
    }
    .carousel-arrows-inline {
        gap: 14px;
        margin-bottom: 20px;
    }
    .carousel-track {
        gap: 28px;
    }

    /* ── Quem Somos ── */
    .quem-somos {
        padding: 110px 60px;
    }
    .quem-somos-text {
        font-size: 42px;
    }
    .quem-somos-number {
        font-size: 70px;
    }
    .quem-somos-subtitle {
        font-size: 18px;
    }
    .quem-somos-description {
        font-size: 18px;
    }

    /* ── Nossos Diferenciais ── */
    .nossos-diferenciais-title {
        font-size: 35px !important;
    }
    .valor-card-title {
        font-size: 23px;
    }
    .valor-card-text {
        font-size: 16px;
    }

    /* ── Nossa Governança ── */
    .nossa-governanca {
        padding: 110px 60px;
    }
    .nossa-governanca-container {
        max-width: 1520px;
    }
    .nossa-governanca-text {
        font-size: 42px;
    }
    .governanca-item-number {
        font-size: 32px;
    }
    .governanca-item-title {
        font-size: 18px;
    }
    .governanca-item-content p {
        font-size: 16px;
    }
    .governanca-image {
        height: 580px;
    }

    /* ── Nossa Essência ── */
    .essencia-titulo-novo {
        font-size: 62px;
    }
    .essencia-subtitulo-novo {
        font-size: 17px;
    }
    .essencia-ben-titulo {
        font-size: 14px;
    }
    .essencia-ben-sub {
        font-size: 13px;
    }

    /* ── O Que É Carta Fiança ── */
    .o-que-e-carta-fianca {
        padding: 90px 60px;
    }
    .o-que-e-carta-fianca-container {
        max-width: 1100px;
    }
    .o-que-e-titulo {
        font-size: 52px;
    }
    .o-que-e-titulo-secao {
        font-size: 28px;
    }
    .o-que-e-texto {
        font-size: 17px;
    }
    .o-que-e-sidebar-titulo {
        font-size: 21px;
    }
    .o-que-e-sidebar-texto {
        font-size: 15px;
    }
    .o-que-e-botao {
        font-size: 16px;
    }

    /* ── Como Funciona ── */
    .como-funciona-container {
        max-width: 1520px;
    }
    .como-funciona-subtitle {
        font-size: 42px;
    }
    .como-funciona-description {
        font-size: 18px;
    }
    .card-title {
        font-size: 23px;
    }
    .card-text {
        font-size: 17px;
    }

    /* ── Footer ── */
    .footer-content {
        max-width: 1400px;
    }
    .footer-bottom {
        max-width: 1400px;
    }
    .footer-section h3 {
        font-size: 18px;
    }
    .footer-section ul a {
        font-size: 15px;
    }
    .footer-contact-text {
        font-size: 15px;
    }
    .footer-copyright {
        font-size: 15px;
    }

    /* ── Páginas de Produto — Hero ── */
    .produto-hero-content {
        max-width: 1400px;
        padding: 0 80px 100px;
    }
    .produto-hero-desc {
        font-size: 19px;
        max-width: 620px;
    }
    .produto-hero-cta-btn {
        font-size: 16px;
        padding: 15px 32px;
    }

    /* ── Páginas de Produto — Content ── */
    .produto-content {
        padding: 110px 60px;
    }
    .produto-intro-grid {
        max-width: 1400px;
        gap: 88px;
    }
    .produto-intro-title {
        font-size: 40px;
    }
    .produto-intro-text {
        font-size: 18px;
    }
    .produto-features-title {
        font-size: 11px;
    }
    .produto-feature-text h4 {
        font-size: 15px;
    }
    .produto-feature-text p {
        font-size: 14px;
    }
    .produto-intro-single {
        max-width: 960px;
    }
    .produto-intro-single .produto-intro-title {
        font-size: 44px;
    }
    .produto-intro-single .produto-intro-text {
        font-size: 19px;
    }

    /* ── Páginas de Produto — Stats ── */
    .produto-stats {
        padding: 110px 100px;
    }
    .produto-stats-inner {
        max-width: 1200px;
        gap: 80px;
    }
    .produto-stat-value {
        font-size: 74px;
    }
    .produto-stat-label {
        font-size: 17px;
    }
    .produto-stat-desc {
        font-size: 15px;
        max-width: 420px;
    }

    /* ── Páginas de Produto — CTA ── */
    .produto-cta {
        padding: 90px 60px;
    }
    .produto-cta-inner {
        max-width: 1400px;
    }
    .produto-cta-text h2 {
        font-size: 38px;
    }
    .produto-cta-text p {
        font-size: 18px;
    }
    .produto-cta-btn {
        font-size: 17px;
        padding: 18px 38px;
    }

    /* ── Páginas de Produto — Outros Produtos ── */
    .produto-outros {
        max-width: 1400px;
        padding: 68px 60px 96px;
    }
    .produto-outros-title {
        font-size: 26px;
    }
    .produto-card-body h3 {
        font-size: 16px;
    }
    .produto-card-body p {
        font-size: 14px;
    }

    /* ── Páginas de Produto — Legal ── */
    .produto-legal {
        padding: 90px 60px;
    }
    .produto-legal-inner {
        max-width: 1400px;
    }
    .produto-legal-title {
        font-size: 32px;
    }
    .produto-legal-subtitle {
        font-size: 18px;
    }
    .produto-legal-card h3 {
        font-size: 18px;
    }
    .produto-legal-card p {
        font-size: 15px;
    }
    .produto-legal-card-text h3 {
        font-size: 20px;
    }

    /* ── Páginas de Produto — Requisitos ── */
    .produto-requisitos {
        padding: 100px 60px;
    }
    .produto-requisitos-inner {
        max-width: 1300px;
    }
    .produto-req-title {
        font-size: 32px;
    }
}

/* ══════════════════════════════════════════════════════
   AUTENTICAÇÃO DE ASSINATURA / CARTA FIANÇA — Responsivo Mobile
   ══════════════════════════════════════════════════════ */

@media (max-width: 768px) {
    /* Hero: mesma altura automática das páginas de produto */
    .hero.hero-autenticacao {
        height: auto !important;
        min-height: 0;
        padding-top: 260px;
    }

    .hero-autenticacao .hero-content {
        margin-top: 0;
        padding: 0 20px 60px;
        text-align: left;
    }

    .hero-autenticacao .hero-title {
        font-size: 28px;
        min-height: auto;
        margin-bottom: 14px;
        text-align: left;
    }

    .hero-autenticacao .hero-title-dash {
        font-size: 26px;
        line-height: 1.25;
        text-align: left;
    }

    .hero-autenticacao .hero-description {
        font-size: 15px;
        max-width: 100%;
        text-align: left;
    }

    /* Overlay: uniforme como nas páginas de produto (brightness 0.65) */
    .hero-autenticacao .hero-overlay {
        background: rgba(0, 16, 40, 0.52);
    }

    /* Seção "Como Funciona": header e cards alinhados à esquerda */
    .como-funciona-header {
        text-align: left;
    }

    .card-content {
        align-items: flex-start;
        text-align: left;
    }

    /* Auth card (carta-fiança): alinhamento à esquerda */
    .como-funciona-cards-single {
        justify-content: flex-start;
        padding: 20px 0;
    }

    .auth-card-content {
        text-align: left;
    }

    .auth-form {
        align-items: flex-start;
    }

    .auth-submit-btn {
        width: 100%;
    }

    /* Card imagem: largura total, mesma proporção dos produtos */
    .card-image {
        flex: 0 0 auto;
        width: 100%;
        height: 200px;
    }
}

@media (max-width: 480px) {
    .hero.hero-autenticacao {
        padding-top: 240px;
    }

    .hero-autenticacao .hero-content {
        margin-top: 0;
        padding: 0 16px 50px;
        text-align: left;
    }

    .hero-autenticacao .hero-title {
        font-size: 22px;
        text-align: left;
    }

    .hero-autenticacao .hero-title-dash {
        font-size: 20px;
        text-align: left;
    }

    .hero-autenticacao .hero-description {
        font-size: 14px;
        text-align: left;
    }

    .auth-card {
        padding: 32px 20px;
        border-radius: 16px;
    }

    .auth-card-title {
        font-size: 20px;
        text-align: left;
    }

    .auth-card-description {
        text-align: left;
    }

    .auth-submit-btn {
        width: 100%;
        padding: 13px 16px;
    }

    .card-image {
        height: 175px;
    }
}
</style>
