:root{
  --navy-900:#0b1b2f;
  --navy-800:#0f2238;
  --navy-700:#132a44;
  --gold-500:#d3a94a;
  --gold-400:#e0bd6b;
  --gold-300:#efd9a0;
  --ivory:#f4efe4;
  --line:rgba(211,169,74,0.35);
}
*{box-sizing:border-box; margin:0; padding:0;}
html,body{height:100%;}
body{
  background:radial-gradient(1200px 600px at 50% -10%, #12294a 0%, var(--navy-900) 55%, #081422 100%);
  color:var(--ivory);
  font-family:'Montserrat', sans-serif;
  display:flex;
  flex-direction:column;
  min-height:100vh;
  overflow-x:hidden;
}

/* top arcs */
.arcs{
  position:relative;
  width:100%;
  height:60px;
  overflow:hidden;
}
.arcs svg{position:absolute; top:0; left:0; width:100%; height:140px;}

main{
  flex:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  padding:20px 24px 60px;
}

.logo-wrap{
  display:flex;
  align-items:center;
  justify-content:center;
  margin-top:10px;
}
.logo-mark{
  width:clamp(260px, 34vw, 420px);
  height:auto;
  display:block;
}
.tagline{
  margin-top:14px;
  font-family:'Poppins', sans-serif;
  font-weight:600;
  letter-spacing:3px;
  font-size:clamp(13px, 1.6vw, 18px);
  color:#eae3d2;
  text-transform:uppercase;
}
.tagline-underline{
  width:70px;
  height:2px;
  background:var(--gold-500);
  margin:14px auto 46px;
  border-radius:2px;
}

h1{
  font-family:'Poppins', sans-serif;
  font-weight:800;
  font-size:clamp(30px, 5.4vw, 56px);
  line-height:1.15;
  color:var(--gold-400);
  max-width:900px;
  text-shadow:0 0 30px rgba(224,189,107,0.25);
}

.subtitle{
  margin-top:26px;
  font-family:'Poppins', sans-serif;
  font-weight:700;
  letter-spacing:1px;
  font-size:clamp(13px, 1.8vw, 18px);
  color:#f2ead5;
}
.divider{
  width:56px;
  height:3px;
  background:var(--gold-500);
  border-radius:3px;
  margin:22px auto 46px;
}

.cards{
  display:flex;
  gap:24px;
  flex-wrap:wrap;
  justify-content:center;
  max-width:900px;
  width:100%;
}
.card{
  background:var(--navy-800);
  border:1px solid var(--line);
  border-radius:10px;
  padding:34px 28px;
  width:290px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:16px;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.card:hover{
  transform:translateY(-4px);
  border-color:var(--gold-500);
  box-shadow:0 12px 30px rgba(0,0,0,0.35);
}
.card svg{width:34px; height:34px; stroke:var(--gold-400);}
.card p{
  font-family:'Poppins', sans-serif;
  font-weight:700;
  font-size:14.5px;
  letter-spacing:0.5px;
  color:#f4efe4;
  text-transform:uppercase;
  line-height:1.5;
}

.cta{
  margin-top:46px;
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:linear-gradient(180deg, var(--gold-400), var(--gold-500));
  color:var(--navy-900);
  font-family:'Poppins', sans-serif;
  font-weight:800;
  font-size:15px;
  letter-spacing:0.5px;
  text-transform:uppercase;
  padding:18px 34px;
  border-radius:40px;
  text-decoration:none;
  box-shadow:0 8px 24px rgba(211,169,74,0.35);
  transition:transform .2s ease, box-shadow .2s ease;
}
.cta:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 30px rgba(211,169,74,0.5);
}
.cta svg{width:18px; height:18px;}

footer{
  background:linear-gradient(90deg, var(--gold-500), var(--gold-400));
  color:var(--navy-900);
  padding:18px 24px;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:40px;
  font-family:'Montserrat', sans-serif;
  font-weight:700;
  font-size:14px;
}
footer .item{
  display:flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
}
footer svg{width:16px; height:16px; flex-shrink:0;}

@media (max-width:520px){
  footer{gap:16px; font-size:12.5px; flex-direction:column; align-items:center;}
}
