
/* ===========================
   RESET
=========================== */

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html,
body{
    overflow-x:hidden;
    width:100%;
}

html{
scroll-behavior:smooth;
}

body{
font-family:'Poppins',sans-serif;
background:#fafafa;
color:#222;
overflow-x:hidden;
}

/* ===========================
   COLORS
=========================== */

:root{

--primary:#0F3D5E;
--secondary:#D4A017;
--cream:#F5E6C8;
--dark:#111;
--white:#fff;

}

/* ===========================
   NAVBAR
=========================== */

.navbar{

position:fixed;
top:0;
left:0;

width:100%;

display:flex;
justify-content:space-between;
align-items:center;

padding:10px 6%;

background:rgba(15,61,94,.55);

backdrop-filter:blur(12px);

z-index:999;

}

.logo img{

height:52px;

}

.nav-links{

display:flex;
gap:30px;
list-style:none;

}

.nav-links a{

text-decoration:none;
color:white;
font-weight:500;

position:relative;

}

.nav-links a::after{

content:"";

position:absolute;
left:0;
bottom:-5px;

width:0;
height:2px;

background:var(--secondary);

transition:.3s;

}

.nav-links a:hover::after,
.nav-links a.active::after{

width:100%;

}

.nav-links.active{
    display:flex;
}

.hamburger{

display:none;

    cursor:pointer;
}

.hamburger span{
    display:block;
    width:25px;
    height:3px;
    margin:5px 0;
    background:white;
    border-radius:3px;
}

/* ===========================
   HERO
=========================== */

.contact-hero{

min-height:65vh;

padding-top:90px;

position:relative;

background:
linear-gradient(
rgba(12, 29, 59, 0.75),
rgba(9, 20, 41, 0.65)
),
url("img/con_banner.webp");

background-size:cover;
background-position:center center;
background-repeat:no-repeat;

display:flex;
align-items:center;
justify-content:center;

text-align:center;

}

.hero-content{

max-width:800px;
padding:20px;

color:white;

}

.hero-tag{

display:inline-block;

color:var(--secondary);

letter-spacing:3px;

margin-bottom:20px;

font-size:.9rem;

}

.contact-hero h1{

font-family:'Playfair Display',serif;

font-size:4rem;

margin-bottom:20px;

}

.contact-hero p{

font-size:1.1rem;

line-height:1.8;

}


.hero-contact-btn{
display:inline-block;
margin-top:25px;
padding:14px 32px;
border-radius:50px;
background:linear-gradient(135deg,#D4A017,#E8C76A);
text-decoration:none;
color:black;
font-weight:600;
}

/* ===========================
   CONTACT SECTION
=========================== */



.contact-section{

padding:100px 8%;

background:#fafafa;


}


.contact-container{

display:grid;

grid-template-columns:
1fr 1.3fr;

gap:50px;

}

/* ===========================
   CONTACT INFO
=========================== */

.contact-info{

background:white;

padding:25px;
width:100%;

border-radius:25px;

box-shadow:
0 10px 30px rgba(0,0,0,.08);

}

.contact-info h2{

margin-bottom:30px;

font-family:'Playfair Display',serif;

color:var(--primary);

}

.contact-info,
.contact-form-wrapper{

    overflow:hidden;

}

.info-card{

display:flex;
align-items:flex-start;
gap:20px;
width:100%;
max-width:100%;
padding:20px;
margin-bottom:15px;
border-radius:15px;
transition:.3s;

}

.info-card:hover{

background:#f5f5f5;

transform:translateX(8px);

}

.info-card i{

font-size:1.4rem;

color:var(--secondary);

min-width:35px;

}

.info-card h3{

margin-bottom:5px;
width:100%;
word-break:break-word;

overflow-wrap:break-word;
min-width:0;

}

.info-card div{

    flex:1;

    min-width:0;

}

.info-card p{

    margin:0;

    width:100%;

    word-break:break-word;

    overflow-wrap:anywhere;

    white-space:normal;

}

/* ===========================
   FORM
=========================== */

.contact-form-wrapper{

background:white;

padding:25px;
width:100%;

border-radius:25px;

box-shadow:
0 10px 30px rgba(0,0,0,.08);

}

.contact-form-wrapper h2{

font-family:'Playfair Display',serif;

margin-bottom:25px;

color:var(--primary);

}

form{

display:flex;
flex-direction:column;
gap:18px;

}

input,
select,
textarea{

width:100%;
max-width: 100%;
box-sizing: border-box;

padding:16px;

border:none;

background:#f7f7f7;

border-radius:12px;

font-family:'Poppins',sans-serif;

transition:.3s;

}

input:focus,
select:focus,
textarea:focus{

outline:none;

background:white;

box-shadow:
0 0 0 2px var(--secondary);

}

button{

background:
linear-gradient(
135deg,
#D4A017,
#E8C76A
);

color:black;

padding:16px;

border:none;

border-radius:50px;

font-size:1rem;

font-weight:600;

cursor:pointer;

transition:.3s;

}

button:hover{

transform:translateY(-4px);

box-shadow:
0 10px 25px rgba(212,160,23,.3);

}

/* ===========================
   TRUST SECTION
=========================== */

.trust{

padding:80px 8%;

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(220px,1fr));

gap:25px;

background:white;

}

.stat{

padding:40px;

text-align:center;

border-radius:20px;

transition:.4s;
cursor:pointer;

background:
linear-gradient(
135deg,
#f9f9f9,
#ffffff
);

box-shadow:
0 10px 20px rgba(0,0,0,.06);

}

.stat i{

font-size:2.3rem;

color:var(--secondary);

margin-bottom:15px;

display:block;

}

.stat h2{

font-size:3rem;

color:var(--secondary);

margin-bottom:10px;

}

.stat:hover{

transform:translateY(-8px);

box-shadow:
0 20px 35px rgba(33, 32, 31, 0.2);

}

/* ===========================
   WHATSAPP CTA
=========================== */

.whatsapp-cta{

padding:90px 20px;

text-align:center;

background:
linear-gradient(
135deg,
var(--primary),
#1a5d89
);

color:white;

}

.whatsapp-cta h2{

font-size:2.5rem;

margin-bottom:15px;

}

.whatsapp-cta p{

margin-bottom:25px;

}

.whatsapp-cta a{

display:inline-block;

padding:15px 35px;

border-radius:50px;

background:white;

color:#25D366;

text-decoration:none;

font-weight:600;

transition:.3s;

}

.whatsapp-cta a:hover{

transform:translateY(-4px);

}

/* ===========================
   MAP
=========================== */

.map-section{

padding:100px 8%;

text-align:center;

}

.map-section h2{

font-family:'Playfair Display',serif;

margin-bottom:30px;

}

.map-placeholder{

height:450px;

border-radius:25px;

background:
linear-gradient(
135deg,
#5e4c0f,
#1a5d89
);

color:white;

display:flex;
flex-direction:column;
justify-content:center;
align-items:center;

text-align:center;

padding:30px;

box-shadow:
0 10px 30px rgba(0,0,0,.12);

transition:.4s;

}

.map-placeholder i{

font-size:4rem;

color:var(--secondary);

margin-bottom:20px;

}

.map-placeholder h3{

font-size:2rem;

margin-bottom:15px;

font-family:'Playfair Display',serif;

}

.map-placeholder p{

margin-bottom:10px;

line-height:1.8;

}

.map-placeholder span{

margin-top:20px;

padding:10px 20px;

border:1px solid rgba(255,255,255,.3);

border-radius:50px;

font-size:.9rem;

}

.map-btn{

margin-top:20px;

padding:12px 25px;

background:var(--secondary);

color:#111;

text-decoration:none;

font-weight:600;

border-radius:50px;

transition:.3s;

}

.map-btn:hover{

transform:translateY(-3px);

box-shadow:
0 10px 20px rgba(212,160,23,.25);

}

.map-placeholder:hover{

transform:translateY(-8px);

}

/* ===========================
   FAQ
=========================== */

.faq{

padding:100px 8%;

background:white;

}

.faq h2{

text-align:center;

font-family:'Playfair Display',serif;

margin-bottom:50px;

}

.faq-item{

margin-bottom:20px;

border-radius:15px;

overflow:hidden;

box-shadow:
0 5px 15px rgba(0,0,0,.05);

}

.faq-btn{

width:100%;

text-align:left;

padding:20px;

background:#f8f8f8;

cursor:pointer;

font-weight:600;

border:none;

display:flex;

justify-content:space-between;

 align-items:center;

}

.faq-content{
    max-height:0;
    overflow:hidden;

    opacity:0;

    padding:0 20px;

    transition:
        max-height 0.5s ease,
        opacity 0.35s ease,
        padding 0.35s ease;
}

.faq-item.active .faq-content{
    max-height:300px;

    opacity:1;

    padding:20px;
}

/* ===========================
   FOOTER
=========================== */

footer{

background:#152b46;

color:white;

text-align:center;

padding:70px 20px;

}

.footer-logo img{

width:120px;

margin-bottom:15px;

border-radius:15px;
}

.socials{

margin:25px 0;

}

.socials a{

font-size:1.4rem;

color:white;

margin:0 12px;

transition:.3s;

}

.socials a:hover{

color:var(--secondary);

}

/* ===========================
   FLOATING WHATSAPP
=========================== */

.floating-whatsapp{

position:fixed;

right:25px;
bottom:25px;

width:65px;
height:65px;

border-radius:50%;

background:#25D366;

display:flex;
justify-content:center;
align-items:center;

font-size:1.8rem;

color:white;

text-decoration:none;

z-index:999;

box-shadow:
0 10px 25px rgba(0,0,0,.25);

}

/* ===========================
   MOBILE
=========================== */

@media(max-width:992px){

.contact-container{

grid-template-columns:1fr;
gap:30px

}

.contact-hero h1{

font-size:3rem;

}

.navbar{

    padding:10px 20px;

}

}

@media(max-width:768px){

.nav-links{
    position:absolute;
    top:70px;
    left:50%;
    transform:translateX(-50%);
    width:92%;
    background:linear-gradient(135deg, rgba(15,61,94,0.96), rgba(9,35,55,0.96));
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    flex-direction:column;
    display:none;
    padding:14px;
    border-radius:0 0 18px 18px;
    box-shadow:0 18px 35px rgba(0,0,0,0.22);
    border:1px solid rgba(255,255,255,0.08);
    gap:8px;
}

.nav-links li{
    width:100%;
}

.nav-links a{
    display:block;
    width:100%;
    padding:12px 16px;
    border-radius:12px;
    transition:0.3s ease;
    color:#fff;
    position:relative;
}

.nav-links a:hover,
.nav-links a.active{
    background:rgba(255,255,255,0.06);
    color:#fff;
    transform:translateX(4px);
}

.nav-links a::before{
    content:"";
    position:absolute;
    left:0;
    top:50%;
    transform:translateY(-50%);
    width:3px;
    height:0;
    background:#d4a017;
    border-radius:10px;
    transition:0.3s ease;
}

.nav-links a:hover::before,
.nav-links a.active::before{
    height:60%;
}

.logo img{
        height:42px;
        border-radius:12px;
}

.hamburger{

display:block;

}

.contact-hero{

height:50vh;

}

.contact-hero h1{

font-size:2rem;
    line-height:1.3;

}

.info-card{

gap:12px;

}

.info-card h3{

font-size:1.2rem;

}

.info-card p{

font-size:.9rem;

}

.hero-content{
    padding:20px;
}

.contact-hero p{

font-size:1rem;

}

.whatsapp-cta h2{

font-size:2rem;

}

.map-placeholder{

height:300px;

}

.contact-container{

        grid-template-columns:1fr !important;

        gap:25px;
        

}

.contact-info,
.contact-form-wrapper{

        width:100%;

        max-width:100%;

}

}


