/* RedHawk Defense V6.8.259 - more visible active flags through U.S. history */
.rhd-heritage-stage{
  position:fixed!important;
  inset:0!important;
  z-index:0!important;
  pointer-events:none!important;
  overflow:hidden!important;
  background:#071a33;
}
body.rhd-heritage-flags #rhd-matrix-back,
body.rhd-heritage-flags .rhd-matrix-toggle,
body.rhd-heritage-flags:before{
  display:none!important;
}
.rhd-heritage-stage::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 18% 18%, rgba(242,193,78,.10), transparent 28%),
    linear-gradient(90deg, rgba(2,6,16,.34), rgba(2,6,16,.12) 45%, rgba(2,6,16,.34)),
    linear-gradient(180deg, rgba(3,8,18,.14), rgba(4,8,18,.34));
}
.rhd-historic-flags-bg,
.rhd-historic-flags-bg .flag-slide{
  position:absolute;
  inset:0;
}
.rhd-historic-flags-bg{ opacity:0; transition:opacity .45s ease; }
body.rhd-heritage-flags .rhd-historic-flags-bg{ opacity:1!important; }
body.rhd-heritage-matrix .rhd-historic-flags-bg{ opacity:0!important; }
.flag-slide{
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center center;
  opacity:0;
  transform:scale(1.07) translate3d(0,0,0);
  animation:rhdFlagFade 32s infinite ease-in-out;
  filter:saturate(1.14) contrast(1.07) brightness(1.03);
  will-change:transform, opacity;
}
.flag-slide.flag1{ background-image:none; animation-delay:0s; }
.flag-slide.flag2{ background-image:none; animation-delay:8s; }
.flag-slide.flag3{ background-image:none; animation-delay:16s; }
.flag-slide.flag4{ background-image:none; animation-delay:24s; }
@keyframes rhdFlagFade{
  0%{opacity:0; transform:scale(1.08) translateX(22px)}
  6%{opacity:.96}
  18%{opacity:.96; transform:scale(1.03) translateX(0)}
  22%{opacity:.90; transform:scale(1.01) translateX(-10px)}
  25%{opacity:0; transform:scale(1.05) translateX(-18px)}
  100%{opacity:0}
}
.rhd-background-choice{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
  align-items:center;
}
.rhd-background-choice-label{
  font-size:12px;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase;
  color:#f2c14e;
}
.rhd-bg-btn{
  appearance:none;
  border:1px solid rgba(255,255,255,.25);
  background:rgba(255,255,255,.08);
  color:#fff;
  padding:10px 14px;
  border-radius:999px;
  font-weight:800;
  cursor:pointer;
}
.rhd-bg-btn:hover{transform:translateY(-1px);}
.rhd-bg-btn.active{
  background:linear-gradient(90deg,#f2c14e,#fff3c4);
  color:#081325;
  border-color:transparent;
}
.rhd-service-support,
.rhd-flag-history{
  margin:24px 0;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.18);
  background:linear-gradient(135deg, rgba(7,26,51,.9), rgba(17,49,95,.86));
  color:#fff;
  box-shadow:0 18px 50px rgba(0,0,0,.35);
}
.rhd-service-support h2,
.rhd-flag-history h2{
  margin:0 0 10px;
  font-size:clamp(26px,3vw,42px);
  line-height:1.05;
}
.rhd-service-support p,
.rhd-flag-history p{
  max-width:960px;
  color:#e8eef9;
  line-height:1.65;
}
.rhd-badge-wall{
  display:grid;
  grid-template-columns:repeat(6, minmax(0,1fr));
  gap:14px;
  margin-top:20px;
}
.rhd-badge-card{
  text-align:center;
  padding:12px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(255,255,255,.06);
  backdrop-filter:blur(4px);
}
.rhd-badge-card img{
  width:100%;
  max-width:106px;
  aspect-ratio:1/1;
  object-fit:contain;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.3));
}
.rhd-badge-card span{
  display:block;
  margin-top:8px;
  font-weight:800;
  font-size:14px;
  color:#fff;
}
.rhd-support-disclaimer{
  margin-top:14px;
  color:#dce8ff;
  font-size:13px;
  line-height:1.5;
}
.rhd-real-service-marks{
  background:linear-gradient(135deg, rgba(4,12,28,.94), rgba(14,39,79,.9) 55%, rgba(82,15,25,.82));
}
.rhd-real-logo-wall{
  grid-template-columns:repeat(6, minmax(0, 1fr));
  gap:10px;
  max-width:880px;
  margin:18px auto 0;
}
.rhd-real-logo-wall .rhd-badge-card{
  min-height:120px;
  padding:10px 8px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  background:rgba(255,255,255,.06);
}
.rhd-real-logo-wall .rhd-badge-card img{
  width:100%;
  max-width:82px;
  height:56px;
  object-fit:contain;
  padding:4px;
  box-sizing:border-box;
  background:rgba(255,255,255,.96);
  border-radius:10px;
  filter:drop-shadow(0 8px 14px rgba(0,0,0,.30));
}
.rhd-real-logo-wall .rhd-badge-card span{
  margin-top:8px;
  font-size:12px;
  line-height:1.2;
}
@media (max-width:1100px){ .rhd-real-logo-wall{grid-template-columns:repeat(3,minmax(0,1fr)); max-width:520px;} }
@media (max-width:640px){ .rhd-real-logo-wall{grid-template-columns:repeat(2,minmax(0,1fr)); max-width:360px;} }
.rhd-support-disclaimer strong{color:#f2c14e;}
.rhd-flag-history{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(135deg, rgba(3,8,20,.94), rgba(16,44,89,.9) 52%, rgba(91,15,25,.82)),
    radial-gradient(circle at top right, rgba(242,193,78,.14), transparent 38%);
}
.rhd-flag-history::after{
  content:"";
  position:absolute;
  left:-8%; right:-8%; bottom:0; height:8px;
  background:repeating-linear-gradient(90deg,#b31942 0 44px,#fff 44px 88px,#0a3161 88px 132px);
  opacity:.88;
}
.rhd-flag-history-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-top:18px;
}
.rhd-flag-history-card{
  border:1px solid rgba(255,255,255,.17);
  background:rgba(255,255,255,.06);
  border-radius:18px;
  padding:16px;
}
.rhd-flag-history-card b{
  display:inline-block;
  margin-bottom:8px;
  color:#f2c14e;
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.rhd-flag-history-card h3{
  margin:0 0 8px;
  font-size:20px;
  color:#fff;
}
.rhd-flag-history-card p,
.rhd-flag-history-note{
  color:#dce8ff;
  line-height:1.58;
}
.rhd-flag-history-note{
  position:relative;
  z-index:1;
  margin-top:18px;
  padding:14px 16px;
  border-radius:16px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.14);
}
@media (max-width:1000px){ .rhd-flag-history-grid{grid-template-columns:repeat(2,minmax(0,1fr));} }
@media (max-width:900px){ .rhd-badge-wall{grid-template-columns:repeat(2,minmax(0,1fr));} }
@media (max-width:640px){ .rhd-flag-history-grid{grid-template-columns:1fr;} }
