:root{
  --bg:#f7f5f1;
  --accent:#8c6b3f;
  --text:#2b2b2b;
}

body{
  margin:0;
  font-family:'Inter',sans-serif;
  background:var(--bg);
  color:var(--text);
}

.hero{
  position: relative;
  height: 70vh;
  background: url("hero.png") center center / cover no-repeat;

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

.hero-overlay{
  background: rgba(0,0,0,0.45);
  padding: 60px 80px;
  text-align: center;
  color: #fff;
  border-radius: 12px;
}

.hero-overlay h1{
  font-family: 'Playfair Display', serif;
  font-size: 3rem;
  margin-bottom: 15px;
  color:#fff;
}

.hero-overlay p{
  font-family: 'Inter', sans-serif;
  font-size: 1.25rem;
  color:#f2f2f2;
}


.main-nav{
  background:#fff;
  box-shadow:0 2px 6px rgba(0,0,0,.1);
}

.nav-inner{
  max-width:1100px;
  margin:auto;
  display:flex;
  align-items:center;
  padding:14px 20px;
}

.nav-inner a{
  margin-right:22px;
  text-decoration:none;
  color:#444;
  font-weight:500;
}

.nav-inner a:hover{
  color:var(--accent);
}

.brand{
  font-family:'Playfair Display',serif;
  font-size:1.2rem;
  color:var(--accent);
  margin-right:40px;
}

.container{
  max-width:900px;
}

.alert-success{
  border-left:6px solid var(--accent);
  background:#fff;
}

.site-footer{
  margin-top:60px;
  padding:30px;
  text-align:center;
  background:#1f1f1f;
  color:#aaa;
}
.content-wrapper{
  max-width:1100px;
  margin:0 auto;
  padding:30px 20px;
}
.heritage-lang {
  position: absolute;
  top: 20px;
  right: 30px;
  z-index: 10;
}

.heritage-lang {
  position: absolute;
  top: 20px;
  right: 30px;
  z-index: 20;
}

.hero-overlay {
  position: relative;
}
body, html {
  height: 100%;
  margin: 0;
}

.page-wrapper{
  min-height:100vh;
  display:flex;
  flex-direction:column;
}

.page-content{
  flex:1;
}

.site-footer{
  margin-top:auto;
}
