/*
 * 1105 Drones Website 2.0 — R25 Unified Public-Site System
 * One authoritative header, footer, typography baseline, and responsive model.
 * Generated from the current production source on July 29, 2026.
 */

:root{
  --radar-black:#050506;
  --panel:#0d0e10;
  --panel-2:#141519;
  --hairline:#2a2c31;
  --steel:#a8abb2;
  --mist:#f5f5f6;
  --green:#e30613;
  --green-dim:#7f0710;
  --brand-red:#e30613;
  --v2-red:#e30613;
  --v2-white:#fff;
  --v2-silver:#c0c0c0;
  --v2-black:#000;
  --v2-ink:#050506;
  --v2-panel:#0d0e10;
  --v2-panel-2:#141519;
  --v2-line:#2a2c31;
  --v2-muted:#a8abb2;
  --font-display:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --font-body:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --font-mono:"Arial Narrow",Inter,ui-sans-serif,system-ui,sans-serif;
  --site-header-height:92px;
}

*{box-sizing:border-box}
html{margin:0;background:#000;scroll-behavior:smooth}
body.v2-site{
  margin:0;
  min-width:320px;
  background:
    radial-gradient(circle at 78% 14%,rgba(227,6,19,.10),transparent 30rem),
    linear-gradient(180deg,#030304 0%,#090a0c 44%,#050506 100%);
  color:var(--mist);
  font-family:var(--font-body);
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body.v2-site::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.10;
  background:url('/terrain-lines-v2.svg') center top/1250px auto repeat;
}
body.menu-open{overflow:hidden}
img{max-width:100%;height:auto}
a{color:inherit}
button,input,select,textarea{font:inherit}
::selection{background:var(--v2-red);color:#fff}
.wrap{width:min(100%,1240px);margin:0 auto;padding-left:32px;padding-right:32px}
.skip-link{
  position:fixed;
  top:8px;
  left:8px;
  z-index:10000;
  transform:translateY(-160%);
  padding:10px 14px;
  border-radius:3px;
  background:#fff;
  color:#000;
  font-weight:800;
  text-decoration:none;
}
.skip-link:focus{transform:translateY(0)}

/* --------------------------------------------------------------------------
   Unified public-site header
   -------------------------------------------------------------------------- */
.site-chrome-header{
  position:sticky!important;
  top:0;
  z-index:1200;
  width:100%;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-bottom:1px solid rgba(255,255,255,.12)!important;
  background:rgba(0,0,0,.94)!important;
  box-shadow:0 1px 0 var(--v2-red),0 16px 40px rgba(0,0,0,.32)!important;
  backdrop-filter:blur(14px);
}
.site-chrome-header .site-chrome-header-wrap{
  width:min(100%,1500px)!important;
  max-width:1500px!important;
  padding-left:32px!important;
  padding-right:32px!important;
}
.site-chrome-header .site-chrome-nav{
  display:grid!important;
  grid-template-columns:120px minmax(0,1fr) 326px!important;
  align-items:center!important;
  gap:24px!important;
  min-height:var(--site-header-height)!important;
  margin:0!important;
  padding:10px 0!important;
  overflow:visible!important;
}
.site-chrome-logo{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:120px!important;
  min-width:120px!important;
  text-decoration:none!important;
}
.site-chrome-logo img{
  display:block!important;
  width:116px!important;
  height:auto!important;
  max-height:68px!important;
  object-fit:contain!important;
  filter:drop-shadow(0 7px 12px rgba(0,0,0,.45));
}
.site-chrome-links{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
  gap:clamp(15px,1.45vw,25px)!important;
  overflow:visible!important;
}
.site-chrome-links a{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  min-height:44px!important;
  padding:0!important;
  color:#c5c7cc!important;
  font-family:var(--font-body)!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1.1!important;
  letter-spacing:.035em!important;
  text-decoration:none!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
.site-chrome-links a:hover,
.site-chrome-links a:focus-visible,
.site-chrome-links a.active{color:#fff!important}
.site-chrome-links a.active::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-24px;
  height:3px;
  border-radius:2px 2px 0 0;
  background:var(--v2-red);
}
.site-chrome-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:18px 44px!important;
  gap:5px!important;
  align-items:center!important;
  justify-items:end!important;
  width:326px!important;
  min-width:326px!important;
  margin:0!important;
  padding:0!important;
}
.site-chrome-phone{
  display:inline-flex!important;
  align-items:center!important;
  color:#d7d8db!important;
  font-size:13px!important;
  font-weight:750!important;
  line-height:1!important;
  letter-spacing:.035em!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
.site-chrome-phone:hover,.site-chrome-phone:focus-visible{color:#fff!important}
.site-chrome-action-buttons{
  display:grid!important;
  grid-template-columns:148px 168px!important;
  gap:10px!important;
  width:326px!important;
}
.site-chrome-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:44px!important;
  padding:10px 12px!important;
  border:1px solid transparent!important;
  border-radius:2px!important;
  font-family:var(--font-body)!important;
  font-size:11.5px!important;
  font-weight:850!important;
  line-height:1!important;
  letter-spacing:.055em!important;
  text-align:center!important;
  text-decoration:none!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
.site-chrome-button-secondary{
  border-color:#575a61!important;
  background:rgba(255,255,255,.025)!important;
  color:#f0f0f1!important;
}
.site-chrome-button-secondary:hover,.site-chrome-button-secondary:focus-visible{
  border-color:#aaaeb5!important;
  background:rgba(255,255,255,.08)!important;
}
.site-chrome-button-primary{
  border-color:#ff2635!important;
  background:linear-gradient(180deg,#f30a1c 0%,#c9000f 100%)!important;
  color:#fff!important;
  box-shadow:0 8px 22px rgba(227,6,19,.20),inset 0 1px 0 rgba(255,255,255,.20)!important;
}
.site-chrome-button-primary:hover,.site-chrome-button-primary:focus-visible{
  background:#f20a1d!important;
  box-shadow:0 12px 28px rgba(227,6,19,.30)!important;
}
.site-chrome-menu-button{
  display:none!important;
  width:48px!important;
  height:48px!important;
  margin:0!important;
  padding:12px!important;
  border:1px solid #44474d!important;
  border-radius:3px!important;
  background:#0b0c0e!important;
  cursor:pointer!important;
}
.site-chrome-menu-button span{
  display:block!important;
  width:100%!important;
  height:2px!important;
  margin:4px 0!important;
  border-radius:2px!important;
  background:#fff!important;
  transition:transform .18s ease,opacity .18s ease!important;
}
.site-chrome-menu-button.open span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.site-chrome-menu-button.open span:nth-child(2){opacity:0}
.site-chrome-menu-button.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.site-chrome-mobile{
  position:fixed!important;
  top:78px!important;
  left:0!important;
  right:0!important;
  z-index:1190!important;
  max-height:calc(100vh - 78px)!important;
  overflow:auto!important;
  border-top:1px solid var(--v2-red)!important;
  border-bottom:1px solid #2b2d31!important;
  background:rgba(3,3,4,.985)!important;
  box-shadow:0 28px 60px rgba(0,0,0,.55)!important;
}
.site-chrome-mobile[hidden]{display:none!important}
.site-chrome-mobile-inner{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:0!important;
  padding-top:18px!important;
  padding-bottom:24px!important;
}
.site-chrome-mobile a{
  display:flex!important;
  align-items:center!important;
  min-height:48px!important;
  padding:11px 2px!important;
  border-bottom:1px solid #24262a!important;
  color:#e3e4e7!important;
  font-size:15px!important;
  font-weight:800!important;
  letter-spacing:.035em!important;
  text-decoration:none!important;
  text-transform:uppercase!important;
}
.site-chrome-mobile a:hover,.site-chrome-mobile a:focus-visible,.site-chrome-mobile a.active{color:var(--v2-red)!important}
.site-chrome-mobile .site-chrome-mobile-cta{
  justify-content:center!important;
  margin-top:18px!important;
  border:1px solid #ff2635!important;
  background:linear-gradient(180deg,#f30a1c 0%,#c9000f 100%)!important;
  color:#fff!important;
}

/* --------------------------------------------------------------------------
   Unified public-site footer
   -------------------------------------------------------------------------- */
.site-chrome-footer{
  clear:both!important;
  width:100%!important;
  margin:0!important;
  padding:56px 0 30px!important;
  border:0!important;
  border-top:1px solid #2a2c31!important;
  background:#08090b!important;
  color:var(--mist)!important;
}
.site-chrome-footer>.wrap{width:min(100%,1240px)!important;max-width:1240px!important;margin:0 auto!important;padding-left:32px!important;padding-right:32px!important}
.site-chrome-footer .site-chrome-footer-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1.35fr) minmax(180px,.75fr) minmax(190px,.75fr)!important;
  gap:clamp(38px,6vw,88px)!important;
  align-items:start!important;
  width:100%!important;
  margin:0 0 26px!important;
  padding:0 0 34px!important;
  border-bottom:1px solid #2a2c31!important;
}
.site-chrome-footer section,.site-chrome-footer nav{display:block!important;margin:0!important;padding:0!important}
.site-chrome-footer-label{
  margin:0 0 15px!important;
  color:#c8c9cd!important;
  font-size:12px!important;
  font-weight:850!important;
  line-height:1.3!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.site-chrome-footer p,.site-chrome-footer a{
  display:block!important;
  margin:0 0 7px!important;
  padding:0!important;
  color:#e4e5e7!important;
  font-size:14px!important;
  line-height:1.55!important;
  text-decoration:none!important;
}
.site-chrome-footer section:first-child p{max-width:480px;color:#b9bbc1!important}
.site-chrome-footer a:hover,.site-chrome-footer a:focus-visible{color:var(--v2-red)!important}
.site-chrome-footer-bottom{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:space-between!important;
  align-items:flex-start!important;
  gap:10px 24px!important;
  color:#9da0a6!important;
  font-size:12px!important;
  line-height:1.6!important;
}
.site-chrome-footer-bottom span:last-child{max-width:760px;text-align:right!important}
.site-chrome-footer-bottom a{display:inline!important;color:#bfc1c5!important;font-size:inherit!important;text-decoration:underline!important;text-underline-offset:3px!important}

/* --------------------------------------------------------------------------
   Shared public-page typography and components
   -------------------------------------------------------------------------- */
.v2-site h1,.v2-site h2,.v2-site h3{
  font-family:var(--font-display)!important;
  font-weight:750!important;
  letter-spacing:-.018em!important;
  text-transform:none!important;
}
.v2-site .eyebrow{
  color:var(--v2-red)!important;
  font-family:var(--font-body)!important;
  font-size:12px!important;
  font-weight:850!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}
.v2-site .page-hero>.wrap{width:min(100%,1240px)!important;max-width:1240px!important;margin:0 auto!important;padding-left:32px!important;padding-right:32px!important}
.v2-site .page-hero{
  padding-top:72px!important;
  padding-bottom:56px!important;
  border-bottom:1px solid rgba(255,255,255,.09)!important;
  background:linear-gradient(90deg,rgba(0,0,0,.96),rgba(0,0,0,.78)),radial-gradient(circle at 82% 42%,rgba(227,6,19,.09),transparent 30rem)!important;
}
.v2-site .page-hero h1{
  max-width:980px!important;
  margin:10px 0 16px!important;
  color:#fff!important;
  font-size:clamp(40px,5vw,62px)!important;
  line-height:1.06!important;
}
.v2-site .page-hero> .wrap > p,
.v2-site .page-hero .wrap>p{
  max-width:830px!important;
  margin:0!important;
  color:#c2c4c9!important;
  font-size:18px!important;
  line-height:1.7!important;
}
.v2-site .btn,.v2-site .button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:11px 18px;
  border-radius:3px;
  font-size:12px;
  font-weight:850;
  letter-spacing:.055em;
  text-decoration:none;
  text-transform:uppercase;
}
.v2-site .btn-primary,.v2-site .button-primary{
  border:1px solid #ff2635;
  background:linear-gradient(180deg,#f30a1c 0%,#c9000f 100%);
  color:#fff;
}
.v2-site .btn-outline,.v2-site .button-secondary{
  border:1px solid #575a61;
  background:rgba(255,255,255,.025);
  color:#f0f0f1;
}

/* Contact page readability correction */
.contact-page .info-strip{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
}
.contact-page .info-card{
  min-height:128px!important;
  padding:24px 26px!important;
  border:1px solid #303238!important;
  border-top:3px solid var(--v2-red)!important;
  border-radius:6px!important;
  background:linear-gradient(180deg,#141519 0%,#0b0c0e 100%)!important;
}
.contact-page .info-card .label{
  margin:0 0 11px!important;
  color:#ff2635!important;
  font-size:14px!important;
  font-weight:900!important;
  line-height:1.2!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
}
.contact-page .info-card a,.contact-page .info-card p{
  margin:0!important;
  color:#fff!important;
  font-size:18px!important;
  font-weight:750!important;
  line-height:1.4!important;
  text-decoration:none!important;
}
.contact-page .info-card a:hover{color:var(--v2-red)!important}

/* --------------------------------------------------------------------------
   Homepage
   -------------------------------------------------------------------------- */
.home-page .hero{
  position:relative;
  overflow:hidden;
  min-height:610px;
  padding:110px 0 104px!important;
  border-bottom:1px solid rgba(255,255,255,.10);
  background:
    linear-gradient(90deg,rgba(0,0,0,.98) 0%,rgba(0,0,0,.82) 54%,rgba(0,0,0,.55) 100%),
    radial-gradient(circle at 78% 45%,rgba(227,6,19,.18),transparent 32rem)!important;
}
.home-page .hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(90deg,transparent,rgba(0,0,0,.8));
}
.home-page .hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,720px) 1fr;gap:60px;align-items:center}
.home-page .hero-copy{max-width:720px}
.home-page .hero h1{
  margin:12px 0 24px;
  color:#fff;
  font-size:clamp(50px,6.2vw,82px)!important;
  line-height:1.01!important;
  letter-spacing:-.045em!important;
  text-wrap:balance;
}
.home-page .hero-lede{max-width:660px;margin:0;color:#c4c6cb;font-size:19px;line-height:1.72}
.home-page .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.home-page .proof-band{border-top:1px solid #24262a;border-bottom:1px solid #24262a;background:#090a0c}
.home-page .proof-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.home-page .proof-grid>div{padding:20px 22px;border-right:1px solid #24262a;color:#d3d4d7;font-size:12px;font-weight:800;line-height:1.45;letter-spacing:.045em;text-align:center;text-transform:uppercase}
.home-page .proof-grid>div:first-child{border-left:1px solid #24262a}
.home-page .section{padding:96px 0}
.home-page .section-dark{border-top:1px solid #24262a;border-bottom:1px solid #24262a;background:#08090b}
.home-page .section-heading{max-width:760px;margin:0 0 38px}
.home-page .section-heading h2,.home-page .feature-panel h2{margin:10px 0 15px;color:#fff;font-size:clamp(34px,4vw,52px);line-height:1.08}
.home-page .section-heading>p:last-child,.home-page .feature-panel>p{color:#b9bbc0;font-size:17px;line-height:1.68}
.home-page .course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.home-page .course-card,.home-page .article-card{
  position:relative;
  min-height:250px;
  padding:27px 28px;
  overflow:hidden;
  border:1px solid #303238;
  border-radius:7px;
  background:linear-gradient(180deg,#141519 0%,#0a0b0d 100%);
  box-shadow:0 16px 42px rgba(0,0,0,.20);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.home-page .course-card:hover,.home-page .article-card:hover{transform:translateY(-3px);border-color:#686c73;box-shadow:0 22px 54px rgba(0,0,0,.38)}
.home-page .course-card>a:last-child,.home-page .article-card>a:last-child{position:absolute;inset:0;z-index:2}
.home-page .course-number,.home-page .article-type{margin:0 0 18px;color:var(--v2-red);font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.home-page .course-card h3,.home-page .article-card h3{margin:0 0 14px;color:#fff;font-size:24px;line-height:1.15}
.home-page .course-card p:not(.course-number),.home-page .article-card p:not(.article-type){margin:0;color:#b5b8be;font-size:15px;line-height:1.65}
.home-page .course-meta{position:absolute;left:28px;right:28px;bottom:25px;padding-top:15px;border-top:1px solid #2b2d31;color:#d5d6d9;font-size:11px;font-weight:800;letter-spacing:.055em;text-transform:uppercase}
.home-page .split-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.home-page .feature-panel{padding:36px;border:1px solid #303238;border-top:3px solid var(--v2-red);border-radius:7px;background:linear-gradient(135deg,rgba(227,6,19,.08),rgba(255,255,255,.025))}
.home-page .feature-panel .button{margin-top:14px}
.home-page .briefing-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;max-width:none}
.home-page .text-link{color:#fff;font-size:13px;font-weight:850;letter-spacing:.045em;text-decoration-color:var(--v2-red);text-underline-offset:5px;text-transform:uppercase;white-space:nowrap}
.home-page .article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.home-page .article-card{min-height:270px}

/* --------------------------------------------------------------------------
   Responsive behavior
   -------------------------------------------------------------------------- */
@media(max-width:1319px){
  :root{--site-header-height:78px}
  .site-chrome-header .site-chrome-header-wrap{padding-left:24px!important;padding-right:24px!important}
  .site-chrome-header .site-chrome-nav{grid-template-columns:116px auto!important;justify-content:space-between!important;gap:20px!important;min-height:78px!important;padding:8px 0!important}
  .site-chrome-logo,.site-chrome-logo img{width:108px!important;min-width:108px!important}
  .site-chrome-links,.site-chrome-phone,.site-chrome-action-buttons{display:none!important}
  .site-chrome-actions{display:flex!important;width:auto!important;min-width:0!important;grid-template:none!important;justify-content:flex-end!important}
  .site-chrome-menu-button{display:block!important}
}
@media(max-width:980px){
  .wrap{padding-left:24px;padding-right:24px}
  .site-chrome-footer>.wrap,.v2-site .page-hero>.wrap{padding-left:24px!important;padding-right:24px!important}
  .home-page .hero{min-height:0;padding:84px 0 80px!important}
  .home-page .hero-grid{grid-template-columns:1fr}
  .home-page .hero-space{display:none}
  .home-page .proof-grid{grid-template-columns:repeat(2,1fr)}
  .home-page .course-grid,.home-page .article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .site-chrome-footer .site-chrome-footer-grid{grid-template-columns:1.2fr 1fr;gap:38px 54px!important}
  .site-chrome-footer .site-chrome-footer-grid>section:last-child{grid-column:2}
  .contact-page .info-strip{grid-template-columns:1fr!important}
}
@media(max-width:700px){
  .wrap{padding-left:20px;padding-right:20px}
  .site-chrome-footer>.wrap,.v2-site .page-hero>.wrap{padding-left:20px!important;padding-right:20px!important}
  .site-chrome-header .site-chrome-header-wrap{padding-left:20px!important;padding-right:20px!important}
  .site-chrome-logo,.site-chrome-logo img{width:100px!important;min-width:100px!important}
  .v2-site .page-hero{padding-top:48px!important;padding-bottom:40px!important}
  .v2-site .page-hero h1{font-size:clamp(36px,10.5vw,48px)!important}
  .v2-site .page-hero>.wrap>p,.v2-site .page-hero .wrap>p{font-size:16px!important}
  .home-page .hero{padding:68px 0 64px!important}
  .home-page .hero h1{font-size:clamp(43px,13vw,61px)!important}
  .home-page .hero-lede{font-size:17px}
  .home-page .hero-actions{display:grid;grid-template-columns:1fr}
  .home-page .hero-actions .button{width:100%}
  .home-page .proof-grid{grid-template-columns:1fr}
  .home-page .proof-grid>div,.home-page .proof-grid>div:first-child{border-left:1px solid #24262a;border-right:1px solid #24262a;border-bottom:1px solid #24262a}
  .home-page .section{padding:70px 0}
  .home-page .course-grid,.home-page .article-grid,.home-page .split-grid{grid-template-columns:1fr}
  .home-page .briefing-heading{display:block}
  .home-page .text-link{display:inline-block;margin-top:14px}
  .site-chrome-footer{padding:44px 0 26px!important}
  .site-chrome-footer .site-chrome-footer-grid{grid-template-columns:1fr!important;gap:28px!important;padding-bottom:28px!important}
  .site-chrome-footer .site-chrome-footer-grid>section:last-child{grid-column:auto}
  .site-chrome-footer-bottom{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  .site-chrome-footer-bottom span:last-child{text-align:left!important}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
