:root{
  --bg: #0d2155;
  --text: #fcf7f7;
  --muted: #fafafa;
  --accent: #0e0ea5;
  --container: 1100px;
  --radius: 8px;
  --gap: 1.25rem;
  font-size: 16px;
  line-height: 1.5;
  color-scheme: light dark;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: Impact, 'Arial', 'Sans-Serif', 'Lucida Grande', 'Lucida Sans',
  ;background:var(--bg);
  color:var(--text);
}

.container{
  max-width:var(--container);
  margin:0 auto;
  padding:0 1rem;
}

.site-header{
  border-bottom:3px solid #003ffe;
  background:linear-gradient(180deg, rgba(14, 3, 78, 0.8), rgba(1, 1, 26, 0.6));
  position:sticky;
  top:0;
  z-index:10;
  backdrop-filter: blur(6px);
}

.header-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--gap);
  padding:.75rem 0;
}

.brand{font-weight:700; color:rgba(252, 252, 255, 0.995); font-size:1.1rem}
.nav-toggle{
  display:inline-block;
  background:none;
  border:1px solid transparent;
  padding:.5rem;
  border-radius:6px;
}
.nav-toggle:focus{outline:3px solid rgba(250, 6, 92, 0.18)}

.primary-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:1rem}
.primary-nav a{text-decoration:none;color:var(--text);padding:.4rem .6rem;border-radius:6px}
.primary-nav a:focus, .primary-nav a:hover{background:#043caa}

.hero{
  padding:3.5rem 0;
  text-align:center;
  background:linear-gradient(135deg, #250f91, #000000);
}
.hero .lead{color:var(--muted); max-width:40rem; margin:0.75rem auto 1.5rem}

.btn{
  display:inline-block;
  text-decoration:none;
  border:1px solid #ddd;
  padding:.6rem .9rem;
  border-radius:6px;
  color:var(--text);
  background:transparent;
  cursor:pointer;
}
.btn.primary{
  background:var(--accent);
  color:white;
  border-color:transparent;
}
.features{padding:2rem 0}
.grid{
  display:grid;
  grid-template-columns:1fr;
  gap:1rem;
}
.features article{background:#fff;padding:1rem;border-radius:var(--radius);box-shadow:0 1px 2px rgba(10,10,10,.03)}

.about{padding:1.5rem 0}
.contact{padding:1.5rem 0}
label{display:block;margin:.5rem 0 0.25rem;font-weight:600}
input,textarea{
  width:100%;
  padding:.6rem;
  border:5px solid #0029f8;
  border-radius:6px;
  font:inherit;
}
input:focus,textarea:focus{outline:3px solid rgba(8, 230, 108, 0.12); border-color:var(--accent)}
.site-footer{border-top:1px solid #f9f6f6;padding:1rem 0;text-align:center;color:var(--muted);font-size:.95rem}

/* Responsive */
@media (min-width:700px){
  .grid{grid-template-columns:repeat(3,1fr)}
  .primary-nav{display:block}
  .nav-toggle{display:none}
}
@media (max-width:699px){
  .primary-nav{display:none}
  .primary-nav[aria-hidden="false"]{display:block}
  .primary-nav ul{flex-direction:column;gap:.25rem}
}