
body{
  margin:0;
  font-family:'Inter',sans-serif;
  background:#f6f1eb;
  color:#111;
}

.container{
  max-width:1100px;
  margin:auto;
  padding:100px 20px;
}

/* HERO */

.hero{
  height:50vh;
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:white;
}

.hero img{
  position:absolute;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:-1;
}

.hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(0,0,0,0.55);
  z-index:-1;
}

.hero h1{
  font-family:'Cormorant Garamond',serif;
  font-size:70px;
  letter-spacing:6px;
}

/* GRID */

.grid{
    display:grid;
    grid-template-columns: 1.2fr 1fr;
    gap:20px;
    align-items:start;
}

.map iframe{
    width:100%;
    height:420px;
    display:block;
    border:0;
}

/* FORM */

form{
  background:white;
  padding:40px;
  border-radius:20px;
}

input, textarea{
  width:100%;
  padding:15px;
  margin-bottom:15px;
  border:1px solid #ddd;
  border-radius:12px;
  font-family:inherit;
}

textarea{
  height:140px;
  resize:none;
}

button{
  background:#111;
  color:white;
  padding:15px 30px;
  border-radius:50px;
  border:none;
  cursor:pointer;
  text-transform:uppercase;
  letter-spacing:2px;
}

/* INFO BOX */

.info{
    display:flex;
    flex-direction:column;
    gap:15px;
    margin:0;
    padding:0;
    padding-top: 40px;
    padding-left: 100px;
}

.info .box{
    margin:0;
    padding-top: 1px;
    padding-right: 10px;
    padding-bottom: 0px;
    padding-left: 30px;
}

/* MAP */

.map{
  margin-top:60px;
  border-radius:20px;
  overflow:hidden;
}

/* TITLES */

h2{
  font-family:'Cormorant Garamond',serif;
  font-size:42px;
  margin-bottom:15px;
}

p{
  color:#444;
  line-height:1.8;
}

/* RESPONSIVE */

@media(max-width:900px){
  .grid{
    grid-template-columns:1fr;
  }

  .hero h1{
    font-size:45px;
  }
}

