/*==================================================
CONTACT HERO
==================================================*/

.contact-hero{

padding:190px 0 120px;

background:
linear-gradient(rgba(0,0,0,.75),rgba(0,0,0,.75)),
url("images/contact-banner.jpg") center/cover no-repeat;

border-bottom:1px solid var(--border);

}


.contact-hero span{

display:inline-block;
font-size:12px;
letter-spacing:4px;
color:var(--gold);
margin-bottom:20px;
text-transform:uppercase;

}


.contact-hero h1{

font-size:90px;
line-height:.95;
margin-bottom:25px;
color:#fff;

}


.contact-hero p{

max-width:620px;
font-size:17px;
line-height:1.9;
color:var(--text);

}





/*==================================================
CONTACT WRAPPER
==================================================*/


.contact-wrapper{

padding:100px 0;
background:#0b0b0b;

}




/*==================================================
FORM BOX
==================================================*/


.contact-form-box{

background:#111;

border:1px solid var(--border);

border-radius:24px;

padding:45px;

box-shadow:0 30px 80px rgba(0,0,0,.35);

}



.section-tag{

display:inline-block;

font-size:12px;

letter-spacing:3px;

color:var(--gold);

text-transform:uppercase;

margin-bottom:15px;

}



.contact-form-box h2{

font-size:42px;

margin-bottom:15px;

}



.contact-form-box p{

color:#aaa;

line-height:1.8;

margin-bottom:35px;

}




/*==================================================
FORM
==================================================*/


.contact-form-box label{

display:block;

font-size:14px;

font-weight:600;

color:#fff;

margin-bottom:8px;

}



.contact-form-box .form-control,
.contact-form-box .form-select{


background:#171717;

border:1px solid #2b2b2b;

color:#fff;

border-radius:14px;

min-height:56px;

padding:14px 18px;

}



.contact-form-box textarea.form-control{

min-height:180px;

resize:none;

}



.contact-form-box .form-control::placeholder{

color:#888;

}



.contact-form-box .form-control:focus,
.contact-form-box .form-select:focus{


background:#171717;

color:#fff;

border-color:var(--gold);

box-shadow:0 0 0 .15rem rgba(216,177,60,.15);

}






/*==================================================
BUTTON
==================================================*/


.send-btn{


display:inline-flex;

align-items:center;

gap:12px;

padding:18px 42px;

border:none;

border-radius:50px;

background:var(--gold);

color:#111;

font-weight:700;

transition:.4s;

}



.send-btn:hover{

transform:translateY(-5px);

background:#f2c34d;

}

/*==================================================
CONTACT CARD
==================================================*/


.contact-card{


background:#111;

border:1px solid var(--border);

border-radius:24px;

padding:40px;

position:sticky;

top:120px;


}



.contact-card h3{

font-size:30px;

margin-bottom:30px;

}




.contact-item{


display:flex;

gap:18px;

margin-bottom:28px;

align-items:flex-start;


}



.contact-item i{


width:55px;

height:55px;

display:flex;

justify-content:center;

align-items:center;

border-radius:50%;

background:var(--gold);

color:#111;

font-size:20px;


}




.contact-item h5{
font-size: 16px;
margin-bottom:6px;

}



.contact-item p{

color:#bbb;

margin:0;
font-size: 12px;
line-height:1.7;

}



.contact-card hr{

border-color:var(--border);

margin:35px 0;

}



.working-hours p{

color:#aaa;

}



.working-hours strong{

color:var(--gold);

}
/*==================================================
GOOGLE MAP
==================================================*/


.contact-map{

width:100%;

height:520px;

overflow:hidden;

}



.contact-map iframe{

width:100%;

height:100%;

border:0;

filter:grayscale(100%) contrast(1.1) brightness(.8);

}







/*==================================================
FAQ
==================================================*/


.contact-faq{

padding:110px 0;

background:#080808;

}



.contact-faq h2{

font-size:48px;

color:#fff;

margin-top:15px;

}



.accordion{

max-width:900px;

margin:auto;

}



.accordion-item{

background:#111;

border:1px solid var(--border);

border-radius:18px !important;

overflow:hidden;

margin-bottom:18px;

}



.accordion-button{


background:#111;

color:#fff;

font-size:18px;

font-weight:600;

padding:22px 25px;

box-shadow:none;


}



.accordion-button:not(.collapsed){

background:#171717;

color:var(--gold);

}



.accordion-button::after{

filter:invert(1);

}



.accordion-body{


background:#111;

color:#bbb;

line-height:1.9;

padding:25px;


}






/*==================================================
CTA
==================================================*/


.contact-cta{


padding:120px 0;

background:linear-gradient(135deg,#111,#1b1b1b);


}



.contact-cta h2{


font-size:58px;

margin-bottom:18px;


}



.contact-cta p{


font-size:18px;

color:#bbb;

margin-bottom:40px;


}




.cta-btn{


display:inline-flex;

align-items:center;

justify-content:center;

padding:18px 45px;

border-radius:60px;

background:var(--gold);

color:#111;

font-weight:700;

transition:.4s;


}



.cta-btn:hover{

transform:translateY(-5px);

background:#f2c34d;

}







/*==================================================
RESPONSIVE
==================================================*/



@media(max-width:1200px){


.contact-hero h1{

font-size:72px;

}



.contact-form-box{

padding:35px;

}



.contact-card{

padding:30px;

}


}







@media(max-width:992px){


.contact-wrapper{

padding:80px 0;

}



.contact-card{

position:relative;

top:0;

}



.contact-hero{

padding:170px 0 90px;

}



.contact-hero h1{

font-size:60px;

}



.contact-form-box h2{

font-size:34px;

}



.contact-faq h2{

font-size:38px;

}



.contact-cta h2{

font-size:44px;

}


}








@media(max-width:768px){


.contact-hero{

padding:150px 0 80px;

text-align:center;

}



.contact-hero h1{

font-size:46px;

}



.contact-hero p{

margin:auto;

}



.contact-form-box{

padding:28px;

}



.contact-card{

margin-top:30px;

}



.contact-map{

height:420px;

}



.contact-faq{

padding:80px 0;

}



.contact-faq h2{

font-size:32px;

}



.contact-cta{

padding:90px 0;

}



.contact-cta h2{

font-size:34px;

}



}








@media(max-width:576px){


.contact-hero{

padding:130px 0 70px;

}



.contact-hero h1{

font-size:36px;

}



.contact-form-box{

padding:22px;

border-radius:18px;

}



.contact-card{

padding:22px;

border-radius:18px;

}



.contact-item{

flex-direction:column;

}



.contact-map{

height:350px;

}



.contact-faq h2{

font-size:28px;

}



.accordion-button{

font-size:16px;

padding:18px;

}



.contact-cta h2{

font-size:28px;

}



.cta-btn{

width:100%;

}


}








@media(max-width:390px){


.contact-hero h1{

font-size:30px;

}



.contact-form-box h2{

font-size:28px;

}



.contact-form-box{

padding:18px;

}



.contact-card{

padding:18px;

}



.contact-cta h2{

font-size:24px;

}

}
.copyright{
    border-top:1px solid var(--border);
    padding:22px 22px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;
    gap:15px;
    color:#888;
    font-size:14px;
}
/* Hide Default Cursor */

*{
    cursor:none;
}

.cursor-outline,
.cursor-dot{
    position:fixed;
    top:0;
    left:0;
    pointer-events:none;
    opacity:0;
    transform:translate(-50%,-50%);
    z-index:999999;
}

/* Outer Circle */

.cursor-outline{

    width:34px;
    height:34px;

    border-radius:50%;

    border:2px solid #FFD54A;

    background:rgba(255,213,74,.05);

    box-shadow:
    0 0 10px rgba(255,213,74,.8),
    0 0 25px rgba(255,213,74,.7),
    0 0 50px rgba(255,213,74,.5);

    backdrop-filter:blur(3px);

    mix-blend-mode:difference;

    transition:
    width .25s,
    height .25s,
    border-color .25s,
    background .25s;

}

/* Center Dot */

.cursor-dot{

    width:8px;
    height:8px;

    border-radius:50%;

    background:#FFD54A;

    box-shadow:
    0 0 8px #FFD54A,
    0 0 18px #FFD54A,
    0 0 35px #FFD54A;

    mix-blend-mode:difference;

}

/* Hover */

.cursor-hover{

    width:58px !important;
    height:58px !important;

    background:rgba(255,213,74,.10);

    border-color:#fff;

}
/*======================================
WHATSAPP FLOAT BUTTON
======================================*/

.whatsapp-float{
    position: fixed;
    right: 25px;
    bottom: 25px;
    width: 65px;
    height: 65px;
    background: #25D366;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    text-decoration: none;
    box-shadow: 0 10px 30px rgba(37,211,102,.45);
    z-index: 9999;
    transition: .35s ease;
    animation: whatsappPulse 2s infinite;
}

.whatsapp-float:hover{
    transform: translateY(-6px) scale(1.08);
    color: #fff;
    box-shadow: 0 15px 40px rgba(37,211,102,.6);
}

@keyframes whatsappPulse{
    0%{
        box-shadow: 0 0 0 0 rgba(37,211,102,.55);
    }
    70%{
        box-shadow: 0 0 0 18px rgba(37,211,102,0);
    }
    100%{
        box-shadow: 0 0 0 0 rgba(37,211,102,0);
    }
}

@media (max-width:768px){

    .whatsapp-float{
        width:58px;
        height:58px;
        right:18px;
        bottom:18px;
        font-size:1.8rem;
    }

}