/* CONTACT HERO SECTION */
html{
scroll-behavior:smooth;
}

.contact-hero{
  position:relative;
  height:70vh;
  width:100%;
  background:url('/assets/images/best-event-planner-in-goa.webp') center/cover no-repeat;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:white;
  overflow:hidden;
}

/* DARK OVERLAY */

.contact-overlay{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background:rgba(0,0,0,0.5);
}

/* TEXT CONTENT */

.contact-hero-content{
  position:relative;
  z-index:2;
}

.contact-small{
  font-family:'Montserrat',sans-serif;
  letter-spacing:6px;
  font-size:12px;
  margin-bottom:10px;
  color:#f1f1f1;
}

.contact-hero-content h1{
  font-family:'Playfair Display',serif;
  font-size:70px;
  font-weight:300;
  letter-spacing:8px;
  margin-bottom:25px;
  color:white;
}

/* BUTTON */

.contact-btn{
  display:inline-block;
  padding:14px 36px;
  border:1px solid white;
  color:white;
  text-decoration:none;
  font-family:'Montserrat',sans-serif;
  letter-spacing:2px;
  font-size:13px;
  transition:0.3s;
}

.contact-btn:hover{
  background:white;
  color:black;
}

/* RESPONSIVE */

@media (max-width:900px){
  .contact-hero-content h1{
    font-size:48px;
    letter-spacing:5px;
  }
}

@media (max-width:600px){
  .contact-hero{
    height:50vh;
    padding:20px;
  }
  .contact-hero-content h1{
    font-size:36px;
    letter-spacing:4px;
  }
  .contact-small{
    font-size:11px;
  }
}

/* GOOGLE MAPS SECTION */

.map-section{
  padding:100px 10%;
  text-align:center;
  background:#f9f9f9;
}

.map-section h2{
  font-family:'Playfair Display',serif;
  font-size:46px;
  letter-spacing:6px;
  margin-bottom:50px;
  color:#333;
}

.map-container{
  width:100%;
  max-width:1200px;
  margin:auto;
  border-radius:6px;
  overflow:hidden;
  box-shadow:0 10px 30px rgba(0,0,0,0.15);
}

.map-container iframe{
  width:100%;
  height:450px;
  border:0;
}

/* RESPONSIVE */

@media (max-width:900px){
  .map-section h2{
    font-size:38px;
    letter-spacing:5px;
  }

  .map-container iframe{
    height:400px;
  }
}

@media (max-width:600px){
  .map-section{
    padding:80px 8%;
  }
  .map-section h2{
    font-size:30px;
    letter-spacing:3px;
  }
  .map-container iframe{
    height:300px;
  }
}

*{
margin:0;
padding:0;
box-sizing:border-box;
}

/* MAIN BODY FONT */

body{
background:#f5f5f5;
color:#666;
font-family:'Montserrat',sans-serif;
}

/* HEADINGS */

h1,h2,h3{
font-family:'Playfair Display',serif;
font-weight:300;
}

/* CONTACT SECTION */

.contact-section{
text-align:center;
padding:70px 20px;
}

.contact-section h1{
font-family:'Playfair Display',serif;
font-size:46px;
letter-spacing:8px;
font-weight:300;
margin-bottom:40px;
}

.contact-details{
max-width:700px;
margin:auto;
text-align:left;
line-height:2.2;
font-size:16px;
color:#777;
}



/* PROGRESS BAR */

.progress-container{
max-width:700px;
margin:40px auto;
padding:0 20px;
}

.progress-bar{
display:flex;
justify-content:space-between;
align-items:center;
position:relative;
}

.progress-bar::before{
content:"";
position:absolute;
height:6px;
width:100%;
background:#ddd;
top:50%;
transform:translateY(-50%);
}

.progress{
position:absolute;
height:6px;
background:#4CAF50;
top:50%;
transform:translateY(-50%);
width:0%;
transition:0.4s;
}

.step{
width:45px;
height:45px;
background:#ddd;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
color:white;
font-weight:600;
z-index:2;
}

.step.active{
background:#4CAF50;
}

.step.finish{
background:#ff5a66;
}

.step-labels{
display:flex;
justify-content:space-between;
margin-top:10px;
font-size:14px;
}



/* FORM */

.form-section{
max-width:700px;
margin:auto;
background:white;
padding:30px;
border-radius:8px;
box-shadow:0 5px 20px rgba(0,0,0,0.05);
}

.form-step{
display:none;
}

.form-step:first-child{
display:block;
}

label{
display:block;
margin-top:15px;
font-size:13px;
font-family:'Montserrat',sans-serif;
letter-spacing:1px;
color:#666;
}

input[type="date"]{
cursor:pointer;
}

input[type="time"]{
cursor:pointer;
}

input,select{
width:100%;
padding:11px;
margin-top:6px;
border:1px solid #ccc;
border-radius:4px;
font-size:14px;
font-family:'Montserrat',sans-serif;
}

button{
margin-top:20px;
padding:11px 24px;
border:none;
background:#ff5b6a;
color:white;
border-radius:4px;
cursor:pointer;
font-family:'Montserrat',sans-serif;
letter-spacing:1px;
transition:0.3s;
}

button:hover{
background:#e94c5a;
}
button.prev{
background:#999;
margin-right:10px;
}



/* THANK YOU */

#thankyou{
display:none;
text-align:center;
padding:60px;
font-size:24px;
}



/* MOBILE */

@media(max-width:768px){

.contact-section h1{
font-size:28px;
letter-spacing:4px;
}

.form-section{
padding:20px;
}

}
.error{
color:#ff5b6a;
font-size:12px;
margin-top:4px;
display:block;
font-family:'Montserrat',sans-serif;
}

input, textarea {
  user-select: text;
  -webkit-user-select: text;
  -ms-user-select: text;
}
input {
  touch-action: manipulation;
}