/* HERO */

.contact-hero{
padding:180px 0 120px;
background:
linear-gradient(rgba(0,0,0,0.45), rgba(0,0,0,0.45)),
url("../img/banners/contact.png");
background-size:cover;
background-position:center;
}

/* Hero text overrides only inside contact hero */
.contact-hero .hero-eyebrow{
color:#ddd;
}

.contact-hero .title{
color:#fff;
}

.contact-hero .hero-sub{
color:#e5e5e5;
}

.hero-eyebrow{
font-size:13px;
letter-spacing:3px;
text-transform:uppercase;
color:#777;
display:inline-block;
margin-bottom:20px;
}

.title{
font-size:64px;
font-weight:800;
line-height:1.1;
color:#1a1a1a;
margin-bottom:22px;
max-width:900px;
}

.title span{
background:linear-gradient(90deg,#ffc107,#f57c00);
-webkit-background-clip:text;
color:transparent;
}

.hero-sub{
font-size:19px;
line-height:1.8;
max-width:680px;
color:#555;
}




/* CONTACT OPTIONS */

.contact-options{
padding:80px 0;
background:#ffffff;
}

.contact-options-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:40px;
margin-top:60px;
}

.contact-option-card{
padding:40px;
background:#ffffff;
border-radius:10px;
box-shadow:0 10px 30px rgba(0,0,0,0.04);
transition:0.3s;
}

.contact-option-card:hover{
transform:translateY(-8px);
box-shadow:0 20px 40px rgba(0,0,0,0.08);
}

.contact-option-card h4{
font-size:22px;
margin-bottom:10px;
}

.contact-option-card p{
font-size:16px;
line-height:1.7;
color:#666;
margin-bottom:14px;
}

.contact-option-card a{
font-weight:600;
color:#f57c00;
text-decoration:none;
}


.section-head{
max-width:720px;
margin-bottom:60px;
}

.section-sub{
font-size:18px;
line-height:1.8;
color:#555;
margin-top:12px;
}


/* CONTACT MAIN */

.contact-main{
padding:80px 0;
background:#faf7f3;
}

.contact-main-grid{
display:grid;
grid-template-columns:1fr 420px;
gap:70px;
align-items:start;
}



/* CONTACT FORM */

.contact-form{
padding:30px;
background:#ffffff;
border-radius:10px;
box-shadow:0 10px 30px rgba(0,0,0,0.04);
}

.form-title{
font-size:28px;
margin-bottom:8px;
}

.form-sub{
font-size:16px;
color:#666;
margin-bottom:30px;
}

.form-row{
display:grid;
grid-template-columns:1fr 1fr;
gap:16px;
}

.form-group{
margin-bottom:16px;
}

.contact-form input,
.contact-form textarea{
width:100%;
padding:14px 16px;
border:1px solid #ddd;
border-radius:6px;
font-size:16px;
font-family:inherit;
transition:0.25s;
}

.contact-form input:focus,
.contact-form textarea:focus{
border-color:#f57c00;
outline:none;
}

.contact-form textarea{
height:140px;
resize:none;
}

.form-success{
background:#e8f7ec;
border:1px solid #9ed6a7;
color:#1b5e20;
padding:14px 18px;
border-radius:6px;
margin-bottom:20px;
font-size:15px;
}


/* CONTACT DETAILS */

.contact-details h3{
font-size:26px;
margin-bottom:18px;
}

.contact-details p{
font-size:16px;
line-height:1.7;
color:#555;
}

.contact-info{
margin-top:30px;
}

.contact-info div{
margin-bottom:20px;
}

.contact-info span{
display:block;
font-size:13px;
letter-spacing:1px;
text-transform:uppercase;
color:#f57c00;
margin-bottom:4px;
}




/* CAMPUS VISIT */

.contact-visit{
padding:80px 0;
background:#ffffff;
}

.visit-grid{
display:grid;
grid-template-columns:1fr 520px;
gap:70px;
align-items:center;
margin-top:40px;
}

.visit-text{
font-size:17px;
line-height:1.8;
color:#555;
margin-bottom:18px;
}

.visit-image img{
width:100%;
border-radius:12px;
box-shadow:0 15px 40px rgba(0,0,0,0.08);
}




/* MAP */

.contact-map{
margin-top:-6px;
}

.contact-map iframe{
width:100%;
height:420px;
border:none;
}

.contact-map{
padding:80px 0;
background:#ffffff;
}

.map-wrap{
border-radius:12px;
overflow:hidden;
box-shadow:0 15px 40px rgba(0,0,0,0.08);
}

.map-wrap iframe{
width:100%;
height:420px;
border:none;
}



/* CTA */

.contact-cta{
padding:90px 0;
background:#faf7f3;
}

.contact-cta-inner{
max-width:720px;
margin:0 auto;
text-align:center;
}



/* Button */


.theme-btn,
button.theme-btn{

display:inline-flex;
align-items:center;
justify-content:center;

padding:14px 36px;

background:linear-gradient(90deg,#ffc107,#f57c00);

color:#ffffff;

font-size:16px;
font-weight:600;

border-radius:40px;

text-decoration:none;

border:none;

cursor:pointer;

transition:all .3s ease;

box-shadow:0 6px 18px rgba(0,0,0,0.12);

}

.theme-btn:hover,
button.theme-btn:hover{

transform:translateY(-3px);

box-shadow:0 14px 32px rgba(0,0,0,0.18);

}


/* MOBILE */

@media(max-width:991px){

.contact-options-grid{
grid-template-columns:1fr;
}

.contact-main-grid{
grid-template-columns:1fr;
}


.visit-grid{
grid-template-columns:1fr;
}

}