/*=====================================
CONTACT HERO
=====================================*/

.contact-hero{

position:relative;

padding:120px 0;

overflow:hidden;

background:

linear-gradient(rgba(3,35,80,.9),rgba(0,70,145,.88)),
url("../images/contact-bg.jpg") center/cover;

color:#fff;

}

.contact-overlay{

position:absolute;

inset:0;

background:radial-gradient(circle at top right,
rgba(255,255,255,.12),
transparent 45%);

}

.contact-hero .container{

position:relative;

z-index:2;

}

.contact-hero h1{

font-size:58px;

font-weight:800;

line-height:1.15;

margin-bottom:25px;

}

.contact-hero h1 span{

color:#ffd24d;

}

.contact-hero p{

font-size:19px;

line-height:1.9;

max-width:650px;

color:#eef4ff;

}

.contact-buttons{

display:flex;

gap:18px;

margin-top:40px;

flex-wrap:wrap;

}

.btn-contact-primary{

background:#ffd24d;

padding:16px 35px;

border-radius:60px;

font-weight:700;

color:#003f8c;

text-decoration:none;

transition:.35s;

}

.btn-contact-primary:hover{

background:#fff;

color:#003f8c;

transform:translateY(-3px);

}

.btn-contact-outline{

border:2px solid rgba(255,255,255,.35);

padding:16px 35px;

border-radius:60px;

font-weight:700;

color:#fff;

text-decoration:none;

transition:.35s;

}

.btn-contact-outline:hover{

background:#fff;

color:#003f8c;

}

.contact-card{

background:rgba(255,255,255,.12);

backdrop-filter:blur(18px);

border-radius:28px;

padding:40px;

border:1px solid rgba(255,255,255,.18);

}

.contact-card h4{

margin-bottom:30px;

font-weight:700;

}

.contact-item{

display:flex;

gap:18px;

align-items:center;

margin-bottom:25px;

}

.contact-item i{

width:58px;

height:58px;

display:flex;

align-items:center;

justify-content:center;

background:#ffd24d;

border-radius:15px;

color:#003f8c;

font-size:22px;

}

.contact-item small{

display:block;

opacity:.8;

margin-bottom:3px;

}

.contact-item h6{

margin:0;

font-size:17px;

font-weight:600;

}

@media(max-width:991px){

.contact-card{

margin-top:45px;

}

.contact-hero{

padding:90px 0;

}

.contact-hero h1{

font-size:42px;

}

}

@media(max-width:768px){

.contact-hero{

text-align:center;

}

.contact-buttons{

justify-content:center;

}

.contact-hero h1{

font-size:34px;

}

.contact-card{

padding:30px;

}

.contact-item{

text-align:left;

}

}

/*====================================
CONTACT INFO
====================================*/

.contact-info-section{

padding:100px 0;

background:#f8fbff;

}

.contact-box{

background:#fff;

padding:40px 35px;

border-radius:24px;

box-shadow:0 15px 45px rgba(0,0,0,.06);

text-align:center;

height:100%;

transition:.35s;

border:1px solid #edf2f7;

}

.contact-box:hover{

transform:translateY(-10px);

box-shadow:0 25px 60px rgba(0,0,0,.10);

}

.contact-box-icon{

width:80px;

height:80px;

margin:0 auto 25px;

background:linear-gradient(135deg,#0057c8,#0d6efd);

border-radius:22px;

display:flex;

align-items:center;

justify-content:center;

color:#fff;

font-size:30px;

}

.contact-box h4{

font-weight:700;

margin-bottom:15px;

}

.contact-box p{

color:#666;

line-height:1.8;

min-height:70px;

}

.contact-box a,
.contact-box span{

font-weight:700;

color:#0057c8;

text-decoration:none;

word-break:break-word;

}

.contact-box a:hover{

color:#003b8f;

}

/*=====================================
CONTACT FORM
=====================================*/

.contact-form-section{

padding:100px 0;

background:#fff;

}

.contact-form-card{

background:#fff;

padding:50px;

border-radius:28px;

box-shadow:0 20px 60px rgba(0,0,0,.08);

}

.contact-form-card label{

font-weight:700;

margin-bottom:10px;

display:block;

}

.contact-form-card .form-control,
.contact-form-card .form-select{

height:58px;

border-radius:15px;

padding:15px;

border:1px solid #dfe7ef;

}

.contact-form-card textarea{

height:auto!important;

}

.contact-form-card .form-control:focus,
.contact-form-card .form-select:focus{

border-color:#0d6efd;

box-shadow:0 0 0 .2rem rgba(13,110,253,.15);

}

.btn-contact-submit{

background:#0057c8;

color:#fff;

padding:18px 40px;

border:none;

border-radius:60px;

font-weight:700;

font-size:17px;

transition:.3s;

}

.btn-contact-submit:hover{

background:#003d8e;

transform:translateY(-3px);

}

.contact-side-card{

background:linear-gradient(135deg,#003b8f,#0d6efd);

color:#fff;

padding:45px;

border-radius:28px;

height:100%;

box-shadow:0 25px 60px rgba(0,0,0,.15);

}

.contact-side-card h3{

font-weight:700;

margin-bottom:20px;

}

.contact-side-card p{

color:#edf4ff;

line-height:1.8;

}

.contact-side-item{

display:flex;

gap:18px;

margin:25px 0;

align-items:flex-start;

}

.contact-side-item i{

font-size:22px;

color:#ffd34d;

margin-top:5px;

}

.contact-side-item strong{

display:block;

margin-bottom:5px;

}

.contact-social{

display:flex;

gap:15px;

margin-top:20px;

}

.contact-social a{

width:48px;

height:48px;

display:flex;

align-items:center;

justify-content:center;

border-radius:50%;

background:rgba(255,255,255,.15);

color:#fff;

text-decoration:none;

font-size:18px;

transition:.3s;

}

.contact-social a:hover{

background:#ffd34d;

color:#003b8f;

}

@media(max-width:991px){

.contact-side-card{

margin-top:10px;

}

}

@media(max-width:768px){

.contact-form-card,
.contact-side-card{

padding:30px;

}

}

/*=====================================
OFFICE MAP
=====================================*/

.contact-map-section{

padding:100px 0;

background:#f8fbff;

}

.office-card{

background:#fff;

padding:45px;

border-radius:25px;

box-shadow:0 20px 50px rgba(0,0,0,.08);

height:100%;

}

.office-card h3{

margin-bottom:30px;

font-weight:700;

}

.office-item{

display:flex;

gap:18px;

margin-bottom:30px;

align-items:flex-start;

}

.office-item i{

width:55px;

height:55px;

background:#0057c8;

color:#fff;

display:flex;

align-items:center;

justify-content:center;

border-radius:15px;

font-size:22px;

}

.office-item strong{

display:block;

margin-bottom:5px;

}

.office-map{

overflow:hidden;

border-radius:25px;

box-shadow:0 20px 50px rgba(0,0,0,.08);

height:100%;

min-height:500px;

}

.office-map iframe{

width:100%;

height:100%;

border:0;

min-height:500px;

}


/*=====================================
FINAL CTA
=====================================*/

.contact-final-cta{

padding:100px 0;

background:linear-gradient(135deg,#003b8f,#005fcb);

}

.contact-final-box{

max-width:900px;

margin:auto;

text-align:center;

color:#fff;

}

.contact-final-box h2{

font-size:48px;

font-weight:800;

margin:25px 0;

}

.contact-final-box p{

font-size:19px;

line-height:1.9;

max-width:720px;

margin:auto;

color:#eef4ff;

}

@media(max-width:768px){

.contact-final-box h2{

font-size:34px;

}

.contact-final-box p{

font-size:17px;

}

}