:root{
  --navy:#0C2A44;
  --text:#292A26;
  --cream:#F0EAE0;
  --white:#FFFFFF;
}

*{ box-sizing:border-box; }

html{ scroll-behavior:smooth; }

body{
  margin:0;
  font-family:"Work Sans", sans-serif;
  background:var(--cream);
  color:var(--text);
}

/* HEADER — always on top */
.header{
  position:fixed;
  top:0;
  left:0;
  right:0;
  width:100%;
  background:var(--navy);
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:16px 32px;
  z-index:9999; /* force above hero */
}

.brand{
  display:flex;
  align-items:center;
}

.brand__logo{
  height:96px;
  width:auto;
  display:block;
}

/* Nav same vertical rhythm */
.nav{
  display:flex;
  align-items:center;
  gap:26px;
}

.nav a{
  color:white;
  text-decoration:none;
  font-size:18px;
  font-weight:600;
  display:inline-flex;
  align-items:center;
  padding:10px 0;
  line-height:1;
}

.lang{
  background:white;
  color:var(--navy);
  border:none;
  padding:10px 16px;
  font-weight:700;
  border-radius:24px;
  cursor:pointer;
}

/* HERO — pushed down so header is visible */
.hero{
  position:relative;
  height:100vh;
  overflow:hidden;
  display:flex;
  align-items:center;
  padding-top:84px; /* space for fixed header */
  z-index:0;
}

.hero__image{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:0;
}

.hero__overlay{
  position:absolute;
  inset:0;
  background:rgba(12,42,68,.70);
  z-index:1;
}

.hero__content{
  position:relative;
  z-index:2; /* above overlay */
  color:white;
  padding:120px 8% 60px;
  max-width:900px;
}

.hero__logo{
  height:96px;
  margin-bottom:22px;
}

.hero h1{
  font-family:"Minion Pro Display", serif;
  font-size:58px;
  margin:0 0 12px;
}

.hero p{
  font-size:19px;
  max-width:600px;
}

/* SECTIONS */
.section{ padding:100px 8%; }

.section--blue{ background:rgba(12,42,68,.12); }

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

h2{
  font-family:"Minion Pro Display", serif;
  font-size:36px;
  color:var(--navy);
}

/* ABOUT centered */
.aboutCenter{
  text-align:center;
  max-width:900px;
}

.aboutText{
  margin: 0 auto;
  max-width: 820px;
}

.aboutText p{ margin: 0 0 16px; }

/* STRATEGY */
.cards{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:22px;
}

.card{
  background:white;
  padding:28px;
  border-left:6px solid var(--navy);
  font-weight:600;
}

/* CONTACT */
.contact{ text-align:center; }

.contactSubtitle{
  margin: 8px auto 10px;
  font-size:16px;
  opacity:.90;
  max-width: 520px;
}

.contactEmail{
  display:inline-block;
  margin-top:10px;
  font-size:22px;
  font-weight:700;
  color:var(--navy);
}

/* FOOTER */
footer{
  margin-top:46px;
  font-size:13px;
  opacity:.7;
}

/* ANIMATION */
.reveal{
  opacity:0;
  transform:translateY(24px);
  transition:.6s ease;
}
.reveal.visible{
  opacity:1;
  transform:none;
}

/* MOBILE */
@media(max-width:900px){
  .cards{ grid-template-columns:1fr; }
  .nav{ display:none; }
  .hero__logo{ height:72px; }
  .header{ padding:14px 18px; }
}
.centerTitle{
  text-align:center;
}
