:root{
  --red:#B22234;
  --navy:#0A3161;
  --yellow:#FFD700;

  --bg:#000000;
  --panel: rgba(10,10,10,0.88);
  --border: rgba(255,215,0,0.18);

  --text:#FFD700;
  --muted:#d6c86b;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: Arial, Helvetica, sans-serif;
  color: var(--text);
  background: var(--bg);
}

/* SOLDIER BACKGROUND IMAGE + DARK OVERLAY */
body::before{
  content:"";
  position:fixed;
  inset:0;
  background:
    linear-gradient(180deg, rgba(0,0,0,0.80) 0%, rgba(0,0,0,0.88) 60%, rgba(0,0,0,0.92) 100%),
    url("soldiers-bg.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  filter: contrast(1.05);
  z-index:-1;
}

a{color:inherit}
.container{max-width:1100px;margin:0 auto;padding:0 16px}

.topbar{
  background: rgba(10,49,97,0.92);
  color: var(--text);
  padding: 10px 0;
  border-bottom: 4px solid var(--red);
  backdrop-filter: blur(6px);
}

.topbar .row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}

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

/* Logo image next to badge */
.brand-logo{
  width:42px;
  height:42px;
  border-radius:12px;
  border:1px solid rgba(255,215,0,0.25);
  object-fit:cover;
  background: rgba(0,0,0,0.35);
}

.brand-badge{
  width:42px;height:42px;border-radius:12px;
  background: linear-gradient(135deg, var(--red), var(--navy));
  display:grid;place-items:center;
  font-weight:900;
  color: var(--yellow);
}

.brand h1{
  margin:0;
  font-size:1.15rem;
  letter-spacing:0.4px;
}
.brand small{display:block;color: var(--muted)}

.nav{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.nav a{
  text-decoration:none;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(255,215,0,0.35);
  color: var(--yellow);
  font-weight:800;
  font-size:0.95rem;
}
.nav a:hover{background: rgba(255,215,0,0.08)}
.nav a.active{background: var(--red); border-color: var(--red); color: #fff}

.hero{
  padding:56px 0 24px 0;
}

.hero-grid{
  display:grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap:22px;
  align-items:stretch;
}
@media (max-width: 900px){
  .hero-grid{grid-template-columns:1fr}
}

.kicker{
  display:inline-block;
  background: rgba(255,215,0,0.08);
  border: 1px solid rgba(255,215,0,0.25);
  padding:6px 10px;
  border-radius:999px;
  font-weight:900;
  color: var(--yellow);
  font-size:0.9rem;
}

.hero h2{
  margin:12px 0 10px 0;
  font-size:2rem;
  letter-spacing:0.2px;
}

.hero p{
  margin:0 0 16px 0;
  color: var(--muted);
  font-size:1.05rem;
  line-height:1.6;
}

.cta-row{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:14px;
}

.button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-decoration:none;
  padding:12px 16px;
  border-radius:12px;
  border:1px solid rgba(255,215,0,0.25);
  background: rgba(17,17,17,0.85);
  color: var(--yellow);
  font-weight:900;
  cursor:pointer;
}
.button.primary{
  background: var(--red);
  border-color: var(--red);
  color: #fff;
}
.button.primary:hover{filter:brightness(0.95)}
.button.ghost{
  background: transparent;
  border-color: rgba(255,215,0,0.35);
  color: var(--yellow);
}
.button.ghost:hover{background: rgba(255,215,0,0.08)}

.card{
  background: var(--panel);
  border:1px solid var(--border);
  border-radius:18px;
  padding:18px;
  box-shadow: 0 10px 24px rgba(0,0,0,0.35);
  backdrop-filter: blur(6px);
}

.section{padding:28px 0}
.section h3{margin:0 0 12px 0;font-size:1.35rem; color: var(--yellow)}

.grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:14px;
}
@media (max-width: 980px){ .grid{grid-template-columns: repeat(2, 1fr);} }
@media (max-width: 640px){ .grid{grid-template-columns: 1fr;} }

.service-card h4{margin:0 0 8px 0; color: var(--yellow)}
.service-card p{margin:0 0 10px 0;color: var(--muted);line-height:1.55}

.tag{
  display:inline-block;
  font-size:0.85rem;
  padding:6px 10px;
  border-radius:999px;
  background: rgba(10,49,97,0.35);
  border:1px solid rgba(255,215,0,0.22);
  color: var(--yellow);
  font-weight:900;
  margin-bottom:10px;
}

.form label{display:block;font-weight:900;margin:10px 0 6px; color: var(--yellow)}
.form input,.form textarea,.form select{
  width:100%;
  padding:12px;
  border-radius:12px;
  border:1px solid rgba(255,215,0,0.18);
  font-size:1rem;
  background: rgba(0,0,0,0.55);
  color: var(--yellow);
}
.form input::placeholder,.form textarea::placeholder{
  color: rgba(255,215,0,0.55);
}
.form textarea{resize:vertical}

.note{color: var(--muted);font-size:0.95rem}
.hr{height:1px;background:rgba(255,215,0,0.15);border:0;margin:14px 0;}

.footer{
  margin-top:18px;
  background: rgba(10,49,97,0.92);
  color: var(--yellow);
  border-top:4px solid var(--red);
  padding:18px 0;
  backdrop-filter: blur(6px);
}
.footer small{color: var(--muted)}

/* Affiliate logo only (no link) */
.affiliate-logo{
  width:54px;
  height:54px;
  border-radius:14px;
  border:1px solid rgba(255,215,0,0.25);
  object-fit:cover;
  background: rgba(0,0,0,0.35);
}

/* Banner card style for notices */
.banner{
  display:flex;
  align-items:flex-start;
  gap:12px;
}
.banner strong{color: var(--yellow)}
