body{
   
    font-family: "Open Sans", sans-serif;
    margin:0;
    color:#585a61;
   
}

.container{
    width:95%;
    max-width:1200px;
    margin:auto;
}

header{
    position:absolute;
    width:100%;
    top:0;
    left:0;
    transition:0.3s;
    z-index:1000;
}

header.sticky{
    position:fixed;
    background: #0a96db;
    box-shadow:0 2px 10px rgba(0,0,0,0.1);
}

.nav-container{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:20px 0;
}
.menu-icon{
    text-align: justify;
}
.logo{
    font-weight:bold;
    font-size:20px;

}

nav a{
    margin:0 15px;
    text-decoration:none;
    color:#fff;

}

.menu-toggle{
    display:none;
    font-size:28px;
    cursor:pointer;
}

p{
    display: block;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    unicode-bidi: isolate;
    line-height: 1.6;
    text-align: justify;
}
.hero{
    padding:120px 0;
    /*background: #0a96db;*/
    background: #0a96db;
    background-image: url('../img/big-bg.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: right;

}

.hero-container{
    max-width:1200px;
    margin:auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:60px;
    padding:0 20px;
    /*background-image: url('../img/site-hero.png');*/
    
    background-repeat: no-repeat;
    background-position: right;
    background-size: contain;

}

.hero-text{
    max-width:550px;
    color:#fff;
}

.hero h1{
    font-size:42px;
    color:#fff;
    /*font-family: "Poppins", sans-serif;*/
    margin-bottom:20px;
}

.hero-subtitle{
    font-size:18px;
    line-height:1.6;
    margin-bottom:25px;
    color:#d6dee9;
    padding-bottom:30px;

}

.hero-benefits{
    list-style:none;
    padding:0;
    margin-bottom:30px;
}

.hero-benefits li{
    margin-bottom:10px;
    font-size:16px;
}

.hero-btn{
    display:inline-block;
    background:#98cc31;
    color:white;
    padding:14px 26px;
    border-radius:6px;
    font-size:16px;
    text-decoration:none;
    font-weight:bold;
}

.hero-btn:hover{
    background:#85ba1b;

}

.hero-note{
    margin-top:12px;
    font-size:14px;
    color:#d6dee9;

}

.hero-image img{

    width:900px;
    max-width:100%;

}



.btn{

    background:#98cc31;
    padding:10px 16px;
    color:white;
    border-radius:5px;
    text-decoration:none;

}

.btn:hover{
    background:#85ba1b;
}
.btn-large{

    display:inline-block;
    margin-top:20px;
    padding:14px 22px;
    background:#0b96db;
    max-width: 250px;
    color:white;
    text-decoration:none;
    border-radius:6px;
    border: none;
}


/*** definições de section ****/

.section{

    padding:40px 0;
    text-align:center;

}
.section-container{
    max-width:1200px;
    margin:0 auto;
    margin-top:40px;
}
.section-title{
        text-align: left;
        text-align:justify;
    padding-bottom: 30px;
   
}
.section-title h2{
        font-size: 32px;
    font-weight: 400;
    margin-bottom: 20px;
    padding-bottom: 0;
    color: #0a96db;
    /*font-family: "Poppins", sans-serif;*/
}

.servicos{
    padding:90px 0;
}
h1{
    font-size: 32pt;
    color:#0b96db;
}

.services-row{
    display:grid;
    /*padding-left: 20px;*/
    padding-right: 20px;
    grid-template-columns: 400px 1fr;
    gap:35px;
    background-image:url('../img/servicos-bg-3_.png');
    background-repeat:no-repeat;
    background-size:contain;
    
}
.services-row div {
  
  /*padding: 10px;*/
  font-size: 14px;
  text-align: left;
}

.services-grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap:35px;
}
.service-row-item{
    display:flex;
    gap:15px;
    padding-bottom:30px;
}
.item-title{
    font-size:14pt;
    color:#0b96db;
}
.service-row-item p{
    text-align:justify;
    color:#878e91;
}
.hor-col-sep{
    padding-left: 30px;
    border-left: 1px solid #0b96db;
}




.intro_text{
max-width:1100px;
margin:auto;
display:flex;
align-items:center;
}

h2{
    color: #0a96db;
}
.blue-background{
    color:#fff;
}


/*******************   Benefits   *********************************************/
.pacotes{

padding:90px 20px;
background:#0b96db;

text-align:center;

}

.pacotes h2{

font-size:32px;
margin-bottom:60px;

}
.h2-white{
    color: white;
}

.pacotes-grid{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
gap:30px;
max-width:1200px;
margin:auto;

}
.intro-text{
    max-width:1200px;
margin:auto;
color: white;
margin-bottom: 20px;
}
.pacotes-card{

background:white;
padding:30px;
border-radius:12px;

box-shadow:0 10px 25px rgba(0,0,0,0.08);

transition:0.3s;

}

.pacotes-card:hover{

transform:translateY(-5px);

box-shadow:0 15px 35px rgba(0,0,0,0.12);

}

.icon{

font-size:36px;
margin-bottom:15px;

}

.pacotes-card h3{

margin-bottom:10px;
font-size:18px;

}

.pacotes-card p{

font-size:14px;
color:#64748b;

}
ul {
	list-style-position: inside;
	
	
	text-align: left;
    font-size: 10pt;
    line-height:20px ;
	padding: 0;
	margin: 0;
	border-radius: 0.1rem;
}

li {
	padding: 0 0 0 1rem;
}



li:first-child {
	margin-top: 1rem;
}

li:last-child {
	margin-bottom: 1rem;
}
h3{
    color: #0b96db;
}

/******  How it works section   ************************************************/
.how-it-works{
  padding:80px 0; 
  background: #f1f6f8;
}
.hiw-container{
    max-width:1200px;
    margin:auto;
}

.section-title{
    max-width: 1200px;
    margin: auto;
    padding: 10px;
    text-align: center;
}
 .timeline {
      display: grid;
      grid-template-columns: repeat(6, 200px); /* largura fixa */
      grid-template-rows: auto 150px auto;     /* linha central fixa */
      text-align: center;
      justify-content: center; /* centraliza a grid no container */
    }
 
    .timeline .bottom {
      grid-row: 3;
    }

  

    .step img {
      max-height: 100%;
      max-width: 100%;
      object-fit: contain;
      
    }
.step-header{
   display: flex;
    justify-content: center;
    align-items: center;
   
}
.step-text{
    font-size:9pt;
    text-align:justify;
    padding: 10px;
}
.step-text h4{
    text-align:center;
    color:#009bde;
    font-size:12pt;
    margin:0;
    padding-top: 10px;
}

.wwa-text{padding: 20px;}
.step {
    padding: 0px;
}

.top {
      grid-row: 1;
      height: 205px;
    }
.middle {
      grid-row: 2;
      display: flex;
      align-items: center;   
      justify-content: center; 
      height: 150px;         
      
      
    }

.blank{
    height: 205px;
}

/****** TESTING how it work grid****/
.hiw-grid{
    display: grid;
    grid-template-columns: repeat(6,1fr);
    margin:auto;
    max-width: 1200px;;
}

/*************************************************/
.about-us{
  padding:80px 0; 
  background: #f1f6f8;
}
.about-us-container{
    max-width: 1200px;
    margin: auto;
    /*background-image: url('../img/about-us-bg.png');
    background-repeat: no-repeat;
    background-size: contain;*/
    font-size: 14px;
}
/*.about-us-container h1{
    color: #fff;
    text-align: left;
    margin: 0;
    padding: 110px 20px 40px 210px !important;
}*/
.who-we-are{    
    display: grid;
    grid-template-columns: 1fr 1fr ;
    gap:40px;
    color: #2e2c2c;
   padding-top: 80px;
}



/*******************************************************************************/


/******  who we are    ***/

.contact-section{

padding:100px 20px;
background:#f8fafc;

}

.contact-container{

max-width:1100px;
margin:auto;

display:grid;
grid-template-columns:1fr 1fr;

gap:60px;

}

.contact-form h2{

font-size:32px;
margin-bottom:15px;

}

.contact-form p{

margin-bottom:25px;
color:#64748b;

}

.contact-form form{

display:flex;
flex-direction:column;
gap:15px;

}

.contact-form input,
.contact-form textarea{

padding:14px;

border:1px solid #e2e8f0;

border-radius:8px;

font-size:14px;

}

.contact-form textarea{

height:120px;

}

.contact-form button{

background:#0b96db;

color:white;

padding:14px;

border:none;

border-radius:8px;

font-weight:bold;

cursor:pointer;
max-width: 250px;
}

.contact-form button:hover{

background:#087ab3;

}

.form-feedback{
margin: 0;
font-size: 14px;
font-weight: 600;
}

.form-feedback.success{
color: #1f7a1f;
}

.form-feedback.error{
color: #b42318;
}



.contact-info{

background:white;

padding:40px;

border-radius:12px;

box-shadow:0 10px 25px rgba(0,0,0,0.08);

}

.contact-info h3{

margin-bottom:25px;

}

.info-item{

display:flex;

align-items:center;

gap:15px;

margin-bottom:18px;

}

.icon{

font-size:20px;

padding:10px;

border-radius:8px;

}


.form-group{
    display: flex;
    flex-direction: row;
    padding: 5px 0;
}


.form-col-1{
    display: grid;
    grid-template-columns: 1fr;
    text-align: left;
}
.form-col-2{
    display: grid;
    grid-template-columns: 1fr 1fr;
    text-align: left;
    gap: 15px;
}
.form-col-item{
    padding: 5px 0;
}


footer{

/*background:#000;*/
/*background: #98cc31;*/
background:#f8fafc;
color:rgb(112, 107, 107);
text-align:center;
padding:20px;

}
.f-container{
    margin: auto;
    max-width: 1200px;
    justify-items: center;
}
.card-top{
    max-width: 160px;
    max-height: 180px;
    padding: 10px 0;
}
.card-text{
    font-size: 10pt;
    text-align: justify;
}
/**** Ecran menores  *****/

@media(max-width:900px){

.hero-container{

flex-direction:column;
text-align:center;
background-image: none;
}

.hero-image{

margin-top:40px;

}

.hero h1{

font-size:32px;

}

nav{

display:none;
position:absolute;
top:70px;
left:0;
width:100%;
background:white;
flex-direction:column;
text-align:right;
padding:20px 0;

}

nav a{

display:block;
padding:12px;
color:#666;
}

nav.active{
display:flex;
}

.menu-toggle{
display:block;
}

.btn{
display:none;
}

/*************************************************************************************/
.process-container{

flex-direction:column;
align-items:center;
gap:50px;

}

.process-container::before{

display:none;

}

.services-row {
    padding-left:15px;
}
/*************************************************************************************/
.contact-container, .form-col-2,.services-container,.services-row,.services-grid{

grid-template-columns:1fr;

}
.hor-col-sep{
    border: 0px;
     padding-left: 0px;
}
.timeline {
        grid-template-columns: 1fr; /* coluna única */
       grid-template-rows:auto 80px auto;
      }

.hiw-grid{
    grid-template-columns: 1fr; 
}
.blank{height: 5px;}
.middle{height: 0px;}

.who-we-are{display: grid; grid-template-columns: 1fr; background-size: contain; height: auto; }
.about-us-container{background-image: none;}
.who-we-are img{width: 0;}
.about-us-container h1{
    color: #0b96db;
    padding: 0 20px 20px;
}

}